Merge tag 'OB_14.4.1-14m' into omaha_15.1.1

14.4.1-14


Former-commit-id: cdca3c5b9eb65bed9d773019917245d1000d78dd
This commit is contained in:
Steve Harris 2015-03-02 10:58:40 -06:00
commit 07363394a1
20 changed files with 117 additions and 42 deletions

View file

@ -1,10 +1,10 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<!--
Name Organization Date Info
Darrel Kingfield NOAA/NSSL/CIMMS 09-02-2014 Initial File Creation
Name - Organization - Date - Info
Darrel Kingfield - NOAA/NSSL/CIMMS - 09-02-2014 - Initial File Creation
-->
<menuTemplate xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<!-- Set the initial top level menu -->
<contribute xsi:type="titleItem" titleText="---Multiple-Radar/Multiple-Sensor---" id="MRMS-SVR"/>
<!-- <contribute xsi:type="subinclude" fileName="menus/mrms/mrmsProducts.xml"/> -->
<contribute xsi:type="subinclude" fileName="menus/mrms/mrmsProducts.xml"/>
</menuTemplate>

View file

@ -55,7 +55,7 @@
<vbSource key="Guam-RTMA" category="SfcGrid" views="PLANVIEW TIMESERIES" />
<vbSource key="GWW233" category="SfcGrid" views="PLANVIEW TIMESERIES" />
<vbSource key="HurWind250" category="SfcGrid" views="PLANVIEW TIMESERIES" />
<vbSource key="HI-MOSGuide" category="SfcGrid" views="PLANVIEW TIMESERIES" />
<vbSource key="MOSGuide-HI" category="SfcGrid" views="PLANVIEW TIMESERIES" />
<vbSource key="HI-NamDNG5" category="SfcGrid" views="PLANVIEW TIMESERIES" />
<vbSource key="HI-RTMA" category="SfcGrid" views="PLANVIEW TIMESERIES" />
<vbSource key="HPCqpfNDFD" category="SfcGrid" views="PLANVIEW TIMESERIES" />

View file

@ -22,4 +22,5 @@
<alias base="GFS212">GribModel:7:0:96:212</alias>
<alias base="GFS212">GribModel:7:0:81:212</alias>
<alias base="GFS212">GribModel:7:0:77:212</alias>
<alias base="EKDMOS">GribModel:7:14:114</alias>
</aliasList>

View file

@ -3261,6 +3261,25 @@
<id>0</id>
</process>
</model>
<model>
<name>EKDMOS</name>
<center>7</center>
<subcenter>14</subcenter>
<grid>184</grid>
<process>
<id>114</id>
</process>
</model>
<model>
<name>EKDMOS-AK</name>
<center>7</center>
<subcenter>14</subcenter>
<grid>1023</grid>
<process>
<id>114</id>
</process>
</model>
<!-- END SUBCENTER 14: NWS METEOROLOGICAL DEVELOPMENT LABORATORY -->

View file

@ -31,7 +31,7 @@
229:229:Seamless Hybrid Scan Reflectivity (SHSR):dBZ:SeamlessHSR
230:230:Radar Quality Index (RQI)::RadarQualityIndex
231:231:QPE - Radar Only (1 hr. accum.):mm:RadarOnlyQPE01H
232:232:QPE - Radar Only (3 hr. accum.):RadarOnlyQPE03H
232:232:QPE - Radar Only (3 hr. accum.):mm:RadarOnlyQPE03H
233:233:QPE - Radar Only (6 hr. accum.):mm:RadarOnlyQPE06H
234:234:QPE - Radar Only (12 hr. accum.):mm:RadarOnlyQPE12H
235:235:QPE - Radar Only (24 hr. accum.):mm:RadarOnlyQPE24H

View file

@ -2,7 +2,7 @@
0:0:Surface Precipitation Type (SPT)::PrecipType
1:1:Radar Precipitation Rate (SPR):mm/hr:PrecipRate
2:2:QPE - Radar Only (1 hr. accum.):mm:RadarOnlyQPE01H
3:3:QPE - Radar Only (3 hr. accum.):RadarOnlyQPE03H
3:3:QPE - Radar Only (3 hr. accum.):mm:RadarOnlyQPE03H
4:4:QPE - Radar Only (6 hr. accum.):mm:RadarOnlyQPE06H
5:5:QPE - Radar Only (12 hr. accum.):mm:RadarOnlyQPE12H
6:6:QPE - Radar Only (24 hr. accum.):mm:RadarOnlyQPE24H

View file

@ -18,4 +18,4 @@
See_the_AWIPS_II_Master_Rights_File_("Master_Rights_File.pdf")_for
further_licensing_information.
-->
<DerivedParameter abbreviation="CLGTN" name="Categorical Lightning Potential" unit=""/>
<DerivedParameter abbreviation="CLGTN2hr" name="2hr Categorical Lightning Potential" unit=""/>

View file

@ -51,6 +51,7 @@ import com.raytheon.uf.edex.plugin.text.impl.WMOReportData;
* Apr 02, 2014 2652 skorolev Corrected a removing of excess control characters.
* May 14, 2014 2536 bclement moved WMO Header to common
* Dec 03, 2014 ASM #16859 D. Friedman Use CharBuffer instead of StringBuilder.
* Feb 17, 2014 ASM #17125 D. Friedman Fix parsing of type and date fields.
* </pre>
*
* @author jkorman
@ -423,12 +424,18 @@ public class UACollectiveSeparator extends WMOMessageSeparator {
}
// Check for USUS80 or 90 formatted messages and decode
else if (dataDes.endsWith("80") || dataDes.endsWith("90")) {
/* // A1 logic. It is not clear what this was for.
if (checkCharNum(buffer.charAt(0))) {
buffer.get();
} else {
stationNum.append(assignTextSegment(buffer, CSPC));
}
*/
if (! checkCharNum(buffer.charAt(0))) {
buffer.get();
}
stationNum.append(assignTextSegment(buffer, CSPC));
getTextSegment(buffer, parsedMsg, CSEP);
} else {
// Otherwise it's standard format so decode
@ -442,18 +449,19 @@ public class UACollectiveSeparator extends WMOMessageSeparator {
// to be used as the station number instead of the third, so the
// length of a string between spaces is now used to determine a
// valid field.
CharBuffer stationSearchBuffer = buffer.duplicate();
int x = 0;
while (x < 2 && buffer.length() > 0) {
int len = buffer.length();
if (safeStrpbrk(buffer, CSPC)) {
if (len - buffer.length() >= 4) {
while (x < 2 && stationSearchBuffer.length() > 0) {
int len = stationSearchBuffer.length();
if (safeStrpbrk(stationSearchBuffer, CSPC)) {
if (len - stationSearchBuffer.length() >= 4) {
x++;
}
buffer.get();
stationSearchBuffer.get();
}
}
stationNum.append(assignTextSegment(buffer, CSPC));
stationNum.append(assignTextSegment(stationSearchBuffer, CSPC));
}
getTextSegment(buffer, parsedMsg, CSEP);

View file

@ -9,8 +9,7 @@ Require-Bundle: com.raytheon.edex.common,
org.geotools,
ucar.nc2,
com.raytheon.uf.common.dataplugin.grid,
com.raytheon.uf.edex.plugin.level,
org.apache.commons.logging
com.raytheon.uf.edex.plugin.level
Export-Package: gov.nasa.msfc.sport.edex.plugin.lma
Bundle-RequiredExecutionEnvironment: JavaSE-1.7
Import-Package: com.raytheon.uf.common.localization,

View file

@ -1 +1 @@
b0ccb6afd656a3d8b4e26247bfa669f5f9e31291
cb98ce7da536d5c8a5ab8d6562c9f787734e3ea4

View file

@ -1 +1 @@
b0ccb6afd656a3d8b4e26247bfa669f5f9e31291
cb98ce7da536d5c8a5ab8d6562c9f787734e3ea4

View file

@ -71,6 +71,7 @@
* Date Developer Action
* 08/16/2007 Guoxian Zhou first version
* 07/2013 JingtaoD dual pol
* 02/2015 JingtaoD A2 OB14.4.1 DR#17123 - HPE Bias Source field
***********************************************************************/
static double ** origLocBias = NULL;
@ -102,7 +103,8 @@ int applyLocalBias(const time_t tRunTime ,
struct tm * pRunTime = NULL ;
static int first = 0;
char prefix[10] = {'\0'};
char prefix[20] = {'\0'};
int i, j ;
@ -128,7 +130,7 @@ int applyLocalBias(const time_t tRunTime ,
{
strcpy(prefix, "LOCBIASDP");
sprintf ( message , "STATUS: using dual pol local bias.") ;
printMessage( message );
hpe_fieldgen_printMessage( message );
}
}
@ -138,7 +140,7 @@ int applyLocalBias(const time_t tRunTime ,
{
sprintf ( message , "WARNING: token \"%s\" not available"
" - using mean field bias.", LOCBIAS_DIR_TOKEN) ;
printMessage( message );
hpe_fieldgen_printMessage( message );
return 0;
@ -147,7 +149,7 @@ int applyLocalBias(const time_t tRunTime ,
{
strcpy(prefix, "LOCBIAS");
sprintf ( message , "STATUS: using single pol local bias.") ;
printMessage( message );
hpe_fieldgen_printMessage( message );
}
}
@ -161,7 +163,7 @@ int applyLocalBias(const time_t tRunTime ,
"%Y%m%d%H", pRunTime);
sprintf(fileName, "%s/%s%sz", localBiasDir, prefix, strDateTime );
sprintf(message, "STATUS: local bias file name is %s.", fileName);
sprintf(message, "STATUS: in apply_local_bias-local bias file name is %s.", fileName);
hpe_fieldgen_printMessage( message );

View file

@ -11,6 +11,8 @@
* MODIFICATION HISTORY:
* DATE PROGRAMMER DESCRIPTION/REASON
* 07/2013 JingtaoD add prototypes for dual pol proudcts DSA/DPR
* 02/2015 JingtaoD A2 OB14.4.1 DR#17123 - HPE Bias Source field
* update wrtodb_HPERadarResult()
********************************************************************************
*/
@ -742,6 +744,7 @@ void read_daabiasdyn(const char *radar_id,
void wrtodb_HPERadarResult(const char * hpe_productname,
const char * producttime,
const empe_params_struct * pEMPEParams,
const int radar_data_source);
const int radar_data_source,
const int nobias_flag);
#endif /* #ifndef MPE_FIELDGEN_H */

View file

@ -92,7 +92,7 @@
* Jul. 2001 R. Fulton added mxpra limiting of projected rates
* Aug. 11, 2006 Shucai Guan finish conversion to C Language
* Mar., 2008 Guoxian Zhou finish first operational version
*
* 02/2015 JingtaoD A2 OB14.4.1 DR#17123 - HPE Bias Source field
***********************************************************************/
static void writeGrib(char * fileName, char * procFlag)
@ -175,6 +175,7 @@ void project(const geo_data_struct * pGeoData, const char * mosaicID,
int i, j, iprj, isFilled;
long irc;
int nobias_flag;
int origRowSize = pGeoData->num_rows;
int origColSize = pGeoData->num_cols;
@ -508,11 +509,13 @@ void project(const geo_data_struct * pGeoData, const char * mosaicID,
if (strstr(mosaicID, "BDHR") != NULL)
{
nobias_flag = 0;
sprintf(procFlag, "%s%02d ", biasedRateFilePrefix, k * 15);
sprintf(fileName, "%sM%d%sz", biasedRateFilePrefix, k * 15,
strDateTime);
} else
{
nobias_flag = 1;
sprintf(procFlag, "%s%02d ", rateFilePrefix, k * 15);
sprintf(fileName, "%sM%d%sz", rateFilePrefix, k * 15,
strDateTime);
@ -587,8 +590,10 @@ void project(const geo_data_struct * pGeoData, const char * mosaicID,
sprintf ( message , "\nSTATUS: In Project, insert/update 1km mosaic nowcast into HPERadarResult table");
printLogMessage( message );
sprintf ( message, "nobias flag is %d", nobias_flag);
printLogMessage( message );
wrtodb_HPERadarResult(fileName, prdDateTime, pEMPEParams, radar_data_source);
wrtodb_HPERadarResult(fileName, prdDateTime, pEMPEParams, radar_data_source, nobias_flag);
}
@ -636,10 +641,12 @@ void project(const geo_data_struct * pGeoData, const char * mosaicID,
{
if (strstr(mosaicID, "BDHR") != NULL)
{
nobias_flag = 0;
sprintf(procFlag, "rfcwide ");
sprintf(fileName, "%s4kmH%sz", biasedAccFilePrefix, strDateTime);
} else
{
nobias_flag = 1;
sprintf(procFlag, "rfcwide ");
sprintf(fileName, "%s4kmH%sz", accFilePrefix, strDateTime);
}
@ -662,7 +669,7 @@ void project(const geo_data_struct * pGeoData, const char * mosaicID,
sprintf ( message , "\nSTATUS: In Project, insert/update 4km mosaic nowcast into HPERadarResult table");
printLogMessage( message );
wrtodb_HPERadarResult(fileName, prdDateTime, pEMPEParams, radar_data_source);
wrtodb_HPERadarResult(fileName, prdDateTime, pEMPEParams, radar_data_source, nobias_flag);
}
}
@ -683,10 +690,12 @@ void project(const geo_data_struct * pGeoData, const char * mosaicID,
if (strstr(mosaicID, "BDHR") != NULL)
{
nobias_flag = 0;
sprintf(procFlag, "BTP1H ");
sprintf(fileName, "%sH%sz", biasedAccFilePrefix, strDateTime);
} else
{
nobias_flag = 1;
sprintf(procFlag, "TP1H ");
sprintf(fileName, "%sH%sz", accFilePrefix, strDateTime);
}
@ -760,7 +769,7 @@ void project(const geo_data_struct * pGeoData, const char * mosaicID,
sprintf ( message , "\nSTATUS: In Project, insert/update 1km mosaic nowcast into HPERadarResult table");
printLogMessage( message );
wrtodb_HPERadarResult(fileName, prdDateTime, pEMPEParams, radar_data_source);
wrtodb_HPERadarResult(fileName, prdDateTime, pEMPEParams, radar_data_source, nobias_flag);
}
/*

View file

@ -71,6 +71,7 @@
* Date Developer Action
* 10/24/2006 Guoxian Zhou Modified from run_bmosaic.c
* 07/2013 JingtaoD dual pol
* 02/2015 JingtaoD A2 OB14.4.1 DR#17123 - HPE Bias Source field
***********************************************************************/
static double ** Mosaic = NULL;
@ -114,9 +115,14 @@ void runBDHRMosaic(const run_date_struct * pRunDate ,
static int first = 1 ;
struct tm * pRunTime = NULL ;
long int irc ;
int nobias_flag;
/*for BDHR product, there is bias applied */
nobias_flag = 0;
int status = 0 ;
/*
* strDateTime string should be in format: yyyymmddHHMM
*/
@ -235,7 +241,7 @@ void runBDHRMosaic(const run_date_struct * pRunDate ,
sprintf ( message , "\nSTATUS: In BDHRMOSAIC, insert/update HPERadarResult table");
printLogMessage( message );
wrtodb_HPERadarResult(fileName, prdDateTime, pEMPEParams, dualpol_used);
wrtodb_HPERadarResult(fileName, prdDateTime, pEMPEParams, dualpol_used, nobias_flag);
sprintf ( message , "\nSTATUS: In BDHRMOSAIC, complete insert/update HPERadarResult table");

View file

@ -74,9 +74,10 @@
* Date Developer Action
* 8/13/2006 Guoxian Zhou Build operational version
* 07/2013 Jingtao Deng Modify for adding dual pol producat DPR
* first try to find the DPR product from dprradar
* table and calculate the rain rate. if
* not able to get DPR product, then use DHR product
* first try to find the DPR product from dprradar
* table and calculate the rain rate. if
* not able to get DPR product, then use DHR product
* 02/2015 JingtaoD A2 OB14.4.1 DR#17123 - HPE Bias Source field
***********************************************************************/
extern short ** radarMiscBins ;
@ -164,6 +165,10 @@ void runDHRMosaic(const run_date_struct * pRunDate,
int dualpol_meanbias_flag[MAX_RADAR_NUM];
int sp_meanbias_flag[MAX_RADAR_NUM];
int dualpol_data_avail[MAX_RADAR_NUM];
int nobias_flag;
/* for DHR product, there is no bias applied */
nobias_flag = 1;
/* initialize no dualpol MFB and no dual pol product avialble for each radar */
for (i = 0; i < MAX_RADAR_NUM; i++)
@ -652,7 +657,7 @@ void runDHRMosaic(const run_date_struct * pRunDate,
sprintf ( message , "\nSTATUS: In DHRMOSAIC, insert/update HPERadarResult table");
printLogMessage( message );
wrtodb_HPERadarResult(dhrmosaic_fileName, prdDateTime, pEMPEParams, dualpol_used);
wrtodb_HPERadarResult(dhrmosaic_fileName, prdDateTime, pEMPEParams, dualpol_used, nobias_flag);
sprintf ( message , "\nSTATUS: In DHRMOSAIC, complete insert/update HPERadarResult table");
printLogMessage( message );

View file

@ -73,7 +73,7 @@
* April 2005 Guoxian Zhou converted to C Language
* 10/05/2006 Guoxian Zhou Modified for empe version
* 08/08/2007 Guoxian Zhou add option to use local bias data
*
* 02/2015 JingtaoD A2 OB14.4.1 DR#17123 - HPE Bias Source field
***********************************************************************/
extern int dualpol_used;
@ -113,9 +113,13 @@ void runEBMosaic(const run_date_struct * pRunDate ,
static int first = 1 ;
struct tm * pRunTime = NULL ;
long int irc ;
int nobias_flag;
int status = 0 ;
/* for EBMOSAIC, there is bias applied */
nobias_flag = 0;
/*
* strDateTime string should be in format: yyyymmddHHMM
*/
@ -225,7 +229,7 @@ void runEBMosaic(const run_date_struct * pRunDate ,
sprintf ( message , "\nSTATUS: In EBMOSAIC, insert/update HPERadarResult table");
printLogMessage( message );
wrtodb_HPERadarResult(fileName, prdDateTime, pEMPEParams, dualpol_used);
wrtodb_HPERadarResult(fileName, prdDateTime, pEMPEParams, dualpol_used, nobias_flag);
sprintf ( message , "\nSTATUS: In EBMOSAIC, complete insert/update HPERadarResult table");
printLogMessage( message );

View file

@ -81,6 +81,7 @@
* first try to find the DSA product from dsaradar
* table and calculate the 1 hour precipitation. if
* not able to get DSA product, then use DSP product
* 02/2015 JingtaoD A2 OB14.4.1 DR#17123 - HPE Bias Source field
***********************************************************************/
extern short ** radarMiscBins ;
@ -195,6 +196,10 @@ void runERMosaic(const run_date_struct * pRunDate,
int dualpol_meanbias_flag[MAX_RADAR_NUM];
int sp_meanbias_flag[MAX_RADAR_NUM];
int dualpol_data_avail[MAX_RADAR_NUM];
int nobias_flag;
/*ERMOSAIC product has no bias applied */
nobias_flag = 1;
/* initialize no dualpol MFB and no dual pol product avialble for each radar */
for (i = 0; i < MAX_RADAR_NUM; i++)
@ -970,7 +975,7 @@ void runERMosaic(const run_date_struct * pRunDate,
printLogMessage( message );
if(blnMosaic[ermosaic] == 1)
wrtodb_HPERadarResult(ermosaic_fileName, prdDateTime, pEMPEParams, dualpol_used);
wrtodb_HPERadarResult(ermosaic_fileName, prdDateTime, pEMPEParams, dualpol_used, nobias_flag);
sprintf ( message , "\nSTATUS: In ERMOSAIC, complete insert/update HPERadarResult table");
printLogMessage( message );

View file

@ -12,7 +12,7 @@
* MACHINE:
* MODIFICATION HISTORY:
* MODULE # DATE PROGRAMMER DESCRIPTION/REASON
*
* 02/2015 JingtaoD A2 OB14.4.1 DR#17123 - HPE Bias Source field
********************************************************************************
*/
@ -55,19 +55,20 @@
void wrtodb_HPERadarResult(const char * hpe_productname,
const char * producttime,
const empe_params_struct * pEMPEParams,
const int radar_data_source)
const int radar_data_source,
const int nobias_flag)
{
HPERadarResult hperadarresult_struct;
const char * HPE_BIAS_SOURCE_TOKEN = "hpe_bias_source";
static int first = 1 ;
static int first = 0 ;
static char bias_source[6] = "RFC"; // RFC or LOCAL, default to RFC
char strTokenValue[6] = {'\0'} ;
/* retrieve token HPE_BIAS_SOURCE_TOKEN, it can be LOCAL or RFC */
if(first == 1)
if(first == 0)
{
if(hpe_fieldgen_getAppsDefaults(HPE_BIAS_SOURCE_TOKEN, strTokenValue) != -1)
{
@ -97,12 +98,19 @@ void wrtodb_HPERadarResult(const char * hpe_productname,
hpe_fieldgen_printMessage( message );
}
first = 0;
first = 1;
}
/* Initialize the product name. and assign value */
/*hperadarresult_struct.hpe_productname [ PRESET_DESCR_LEN + 1 ] = '\0';*/
strncpy(hperadarresult_struct.hpe_productname, hpe_productname, PRESET_DESCR_LEN);
sprintf ( message, "STATUS: the hpe productname is %s", hpe_productname);
hpe_fieldgen_printMessage( message );
sprintf ( message, "STATUS: the nobias_flag is %d", nobias_flag);
hpe_fieldgen_printMessage( message );
/* assign producttime */
yearsec_ansi_to_dt(producttime, &hperadarresult_struct.producttime);
@ -114,7 +122,7 @@ void wrtodb_HPERadarResult(const char * hpe_productname,
/* Initialize the bias source . and assign value */
hperadarresult_struct.bias_source[BIAS_LEN + 1] = '\0';
if (pEMPEParams->blnMeanFieldBias == 0 && pEMPEParams->blnDHRMeanFieldBias == 0)
if (nobias_flag == 1)
strcpy(hperadarresult_struct.bias_source, "NO BIAS");
else //EBMOSAIC or BDHRMOSAIC
{

View file

@ -443,6 +443,12 @@ IDS|DDPLUS ^(M[A-Z]{3}[0-9]{2}) ([KPTMC].{3}) (..)(..)(..)
IDS|DDPLUS ^(T[BCHPRTWXY][A-Z]{2}[0-9]{2}) ([A-Z]{4}) (..)(..)(..)
FILE -overwrite -log -close -edex /data_store/text/(\3:yyyy)(\3:mm)\3/\4/\1_\2_\3\4\5_(seq).%Y%m%d%H
IDS|DDPLUS ^(SE[A-Z]{2}[0-9]{2}) ([A-Z]{4}) (..)(..)(..)
FILE -overwrite -log -close -edex /data_store/text/(\3:yyyy)(\3:mm)\3/\4/\1_\2_\3\4\5_(seq).%Y%m%d%H
IDS|DDPLUS ^(WE[CHP][A-Z][0-9]{2}) ([A-Z]{4}) (..)(..)(..)
FILE -overwrite -log -close -edex /data_store/text/(\3:yyyy)(\3:mm)\3/\4/\1_\2_\3\4\5_(seq).%Y%m%d%H
# summaries
#IDS|DDPLUS ^(A.{5}) (.{4}) (..)(..)(..)
# FILE -overwrite -log -close -edex /data_store/summaries/(\3:yyyy)(\3:mm)\3/\4/\1_\2_\3\4\5_(seq).%Y%m%d%H