Merge branch 'ncep_14.3.1' of ssh://collaborate3.nws.noaa.gov:29418/AWIPS2_Dev_Baseline into master_14.3.1
Former-commit-id:9fc3eb20c1
[formerly6ad8d500ef
] [formerly9fc3eb20c1
[formerly6ad8d500ef
] [formerly9c33ae6d2c
[formerly e895f7927a95c2416c05953e131d9e0c6095beb3]]] Former-commit-id:9c33ae6d2c
Former-commit-id:a97370769f
[formerly3b48d6368d
] Former-commit-id:2a456a1b9b
This commit is contained in:
commit
d1c45356d3
537 changed files with 66271 additions and 48751 deletions
|
@ -306,7 +306,14 @@
|
|||
unpack="false"/>
|
||||
|
||||
<plugin
|
||||
id="gov.noaa.nws.ncep.viz.timeseries"
|
||||
id="gov.noaa.nws.ncep.viz.ui.remotescript"
|
||||
download-size="0"
|
||||
install-size="0"
|
||||
version="0.0.0"
|
||||
unpack="false"/>
|
||||
|
||||
<plugin
|
||||
id="gov.noaa.nws.ncep.viz.rsc.timeseries"
|
||||
download-size="0"
|
||||
install-size="0"
|
||||
version="0.0.0"
|
||||
|
|
158
deltaScripts/14.2.1-n3/addNcepNwxAdminMessageGpTable.sql
Normal file
158
deltaScripts/14.2.1-n3/addNcepNwxAdminMessageGpTable.sql
Normal file
|
@ -0,0 +1,158 @@
|
|||
-- create nwx.adminmessages table
|
||||
DROP TABLE IF EXISTS nwx.adminmessages CASCADE;
|
||||
CREATE TABLE nwx.adminmessages(
|
||||
id SERIAL PRIMARY KEY,
|
||||
productname varchar(60) NOT NULL,
|
||||
producttablename varchar(30) NOT NULL,
|
||||
producttype varchar(20) NOT NULL
|
||||
);
|
||||
|
||||
-- create nwx.cmcam table
|
||||
DROP TABLE IF EXISTS nwx.cmcam CASCADE;
|
||||
CREATE TABLE nwx.cmcam(
|
||||
id SERIAL PRIMARY KEY,
|
||||
productid varchar(6) NOT NULL,
|
||||
stnid varchar(8) NOT NULL,
|
||||
stnname varchar(32) NOT NULL,
|
||||
state varchar(2) NOT NULL,
|
||||
country varchar(2) NOT NULL,
|
||||
latitude double precision NOT NULL,
|
||||
longitude double precision NOT NULL,
|
||||
elevation int NOT NULL
|
||||
);
|
||||
|
||||
-- create nwx.ncfam table
|
||||
DROP TABLE IF EXISTS nwx.ncfam CASCADE;
|
||||
CREATE TABLE nwx.ncfam(
|
||||
id SERIAL PRIMARY KEY,
|
||||
productid varchar(6) NOT NULL,
|
||||
stnid varchar(8) NOT NULL,
|
||||
stnname varchar(32) NOT NULL,
|
||||
state varchar(2) NOT NULL,
|
||||
country varchar(2) NOT NULL,
|
||||
latitude double precision NOT NULL,
|
||||
longitude double precision NOT NULL,
|
||||
elevation int NOT NULL
|
||||
);
|
||||
|
||||
-- create nwx.nesdisam table
|
||||
DROP TABLE IF EXISTS nwx.nesdisam CASCADE;
|
||||
CREATE TABLE nwx.nesdisam(
|
||||
id SERIAL PRIMARY KEY,
|
||||
productid varchar(6) NOT NULL,
|
||||
stnid varchar(8) NOT NULL,
|
||||
stnname varchar(32) NOT NULL,
|
||||
state varchar(2) NOT NULL,
|
||||
country varchar(2) NOT NULL,
|
||||
latitude double precision NOT NULL,
|
||||
longitude double precision NOT NULL,
|
||||
elevation int NOT NULL
|
||||
);
|
||||
|
||||
-- create nwx.nesdispm table
|
||||
DROP TABLE IF EXISTS nwx.nesdispm CASCADE;
|
||||
CREATE TABLE nwx.nesdispm(
|
||||
id SERIAL PRIMARY KEY,
|
||||
productid varchar(6) NOT NULL,
|
||||
stnid varchar(8) NOT NULL,
|
||||
stnname varchar(32) NOT NULL,
|
||||
state varchar(2) NOT NULL,
|
||||
country varchar(2) NOT NULL,
|
||||
latitude double precision NOT NULL,
|
||||
longitude double precision NOT NULL,
|
||||
elevation int NOT NULL
|
||||
);
|
||||
|
||||
-- create nwx.snwstgam table
|
||||
DROP TABLE IF EXISTS nwx.nwstgam CASCADE;
|
||||
CREATE TABLE nwx.nwstgam(
|
||||
id SERIAL PRIMARY KEY,
|
||||
productid varchar(6) NOT NULL,
|
||||
stnid varchar(8) NOT NULL,
|
||||
stnname varchar(32) NOT NULL,
|
||||
state varchar(2) NOT NULL,
|
||||
country varchar(2) NOT NULL,
|
||||
latitude double precision NOT NULL,
|
||||
longitude double precision NOT NULL,
|
||||
elevation int NOT NULL
|
||||
);
|
||||
|
||||
-- Drop nwx.sdm table
|
||||
DROP TABLE IF EXISTS nwx.sdm CASCADE;
|
||||
|
||||
-- create nwx.sdmam table
|
||||
DROP TABLE IF EXISTS nwx.sdmam CASCADE;
|
||||
CREATE TABLE nwx.sdmam(
|
||||
id SERIAL PRIMARY KEY,
|
||||
productid varchar(6) NOT NULL,
|
||||
stnid varchar(8) NOT NULL,
|
||||
stnname varchar(32) NOT NULL,
|
||||
state varchar(2) NOT NULL,
|
||||
country varchar(2) NOT NULL,
|
||||
latitude double precision NOT NULL,
|
||||
longitude double precision NOT NULL,
|
||||
elevation int NOT NULL
|
||||
);
|
||||
|
||||
-- create nwx.sdmim table
|
||||
DROP TABLE IF EXISTS nwx.sdmim CASCADE;
|
||||
CREATE TABLE nwx.sdmim(
|
||||
id SERIAL PRIMARY KEY,
|
||||
productid varchar(6) NOT NULL,
|
||||
stnid varchar(8) NOT NULL,
|
||||
stnname varchar(32) NOT NULL,
|
||||
state varchar(2) NOT NULL,
|
||||
country varchar(2) NOT NULL,
|
||||
latitude double precision NOT NULL,
|
||||
longitude double precision NOT NULL,
|
||||
elevation int NOT NULL
|
||||
);
|
||||
|
||||
-- create nwx.sdmdhm table
|
||||
DROP TABLE IF EXISTS nwx.sdmdhm CASCADE;
|
||||
CREATE TABLE nwx.sdmdhm(
|
||||
id SERIAL PRIMARY KEY,
|
||||
productid varchar(6) NOT NULL,
|
||||
stnid varchar(8) NOT NULL,
|
||||
stnname varchar(32) NOT NULL,
|
||||
state varchar(2) NOT NULL,
|
||||
country varchar(2) NOT NULL,
|
||||
latitude double precision NOT NULL,
|
||||
longitude double precision NOT NULL,
|
||||
elevation int NOT NULL
|
||||
);
|
||||
|
||||
INSERT INTO nwx.datatypegrouplist (datatypegroupname,datatypegrouptablename) values ('Admin Messages','nwx.adminmessages');
|
||||
INSERT INTO nwx.adminmessages(productname,producttablename,producttype) values ('SDM Administrative Messages','nwx.sdmam','sdmam');
|
||||
INSERT INTO nwx.sdmam (productid,stnid,stnname,state,country,latitude,longitude,elevation) values ('NOUS42','KWNO','NMC','MD','US',38.82,-76.87,86);
|
||||
INSERT INTO nwx.adminmessages(productname,producttablename,producttype) values ('SDM International Messages','nwx.sdmim','sdmim');
|
||||
INSERT INTO nwx.sdmim (productid,stnid,stnname,state,country,latitude,longitude,elevation) values ('NPXX10','KWNO','NMC','MD','US',38.82,-76.87,86);
|
||||
INSERT INTO nwx.adminmessages(productname,producttablename,producttype) values ('SDM DHS Hazards Messages','nwx.sdmdhm','sdmdhm');
|
||||
INSERT INTO nwx.sdmdhm (productid,stnid,stnname,state,country,latitude,longitude,elevation) values ('NOUS71','KWNO','NMC','MD','US',38.82,-76.87,86);
|
||||
INSERT INTO nwx.adminmessages(productname,producttablename,producttype) values ('CMC Administrative Messages','nwx.cmcam','cmcam');
|
||||
INSERT INTO nwx.cmcam (productid,stnid,stnname,state,country,latitude,longitude,elevation) values ('NOCN05', 'CWAO','MONTREAL_VAAC','CN','CN',45.47,-73.75,-9999);
|
||||
INSERT INTO nwx.cmcam (productid,stnid,stnname,state,country,latitude,longitude,elevation) values ('AACN01', 'CWAO','MONTREAL_VAAC','CN','CN',45.47,-73.75,-9999);
|
||||
INSERT INTO nwx.adminmessages(productname,producttablename,producttype) values ('NWSTG Administrative Messages','nwx.nwstgam','nwstgam');
|
||||
INSERT INTO nwx.nwstgam (productid,stnid,stnname,state,country,latitude,longitude,elevation) values ('NOXX01', 'KWBC','NMC','MD','US',38.82,-76.87,86);
|
||||
INSERT INTO nwx.adminmessages(productname,producttablename,producttype) values ('NCF Administrative Messages','nwx.ncfam','ncfam');
|
||||
INSERT INTO nwx.ncfam (productid,stnid,stnname,state,country,latitude,longitude,elevation) values ('NOUS72', 'KNCF','NMC','MD','US',38.82,-76.87,86);
|
||||
INSERT INTO nwx.adminmessages(productname,producttablename,producttype) values ('NESDIS Product Anomaly Messages','nwx.nesdispm','nesdispm');
|
||||
INSERT INTO nwx.nesdispm (productid,stnid,stnname,state,country,latitude,longitude,elevation) values ('NOUS71', 'KNES','NESDIS','MD','US',38.82,-76.87,86);
|
||||
INSERT INTO nwx.adminmessages(productname,producttablename,producttype) values ('NESDIS Administrative Messages','nwx.nesdisam','nesdisam');
|
||||
INSERT INTO nwx.nesdisam (productid,stnid,stnname,state,country,latitude,longitude,elevation) values ('NOUS72', 'KNES','NESDIS','MD','US',38.82,-76.87,86);
|
||||
|
||||
DELETE from nwx.hpcproducts where productname='SDM Messages';
|
||||
DELETE from nwx.hpcproducts where productname='International Messages';
|
||||
DROP TABLE nwx.sdm;
|
||||
DROP TABLE nwx.intl;
|
||||
|
||||
\connect metadata awips
|
||||
INSERT INTO awips.nctext_inputfile_type VALUES (181,'sdmdhm','W');
|
||||
INSERT INTO awips.nctext_inputfile_type VALUES (182,'cmcam','W');
|
||||
INSERT INTO awips.nctext_inputfile_type VALUES (183,'nwstgam','W');
|
||||
INSERT INTO awips.nctext_inputfile_type VALUES (184,'ncfam','W');
|
||||
INSERT INTO awips.nctext_inputfile_type VALUES (185,'nesdispm','W');
|
||||
INSERT INTO awips.nctext_inputfile_type VALUES (186,'nesdisam','W');
|
||||
INSERT INTO awips.nctext_inputfile_type VALUES (185,'sdmam','B');
|
||||
INSERT INTO awips.nctext_inputfile_type VALUES (186,'sdmim','W');
|
||||
|
5
deltaScripts/14.2.1-n3/updateNcepNwxAdminTables.sh
Normal file
5
deltaScripts/14.2.1-n3/updateNcepNwxAdminTables.sh
Normal file
|
@ -0,0 +1,5 @@
|
|||
#!/bin/bash
|
||||
|
||||
PSQL=/awips2/psql/bin/psql
|
||||
DIR=`dirname $0`
|
||||
${PSQL} -U awips -d ncep -f ${DIR}/addNcepNwxAdminMessageGpTable.sql
|
|
@ -0,0 +1,157 @@
|
|||
-- create nwx.adminmessages table
|
||||
DROP TABLE IF EXISTS nwx.adminmessages CASCADE;
|
||||
CREATE TABLE nwx.adminmessages(
|
||||
id SERIAL PRIMARY KEY,
|
||||
productname varchar(60) NOT NULL,
|
||||
producttablename varchar(30) NOT NULL,
|
||||
producttype varchar(20) NOT NULL
|
||||
);
|
||||
|
||||
-- create nwx.cmcam table
|
||||
DROP TABLE IF EXISTS nwx.cmcam CASCADE;
|
||||
CREATE TABLE nwx.cmcam(
|
||||
id SERIAL PRIMARY KEY,
|
||||
productid varchar(6) NOT NULL,
|
||||
stnid varchar(8) NOT NULL,
|
||||
stnname varchar(32) NOT NULL,
|
||||
state varchar(2) NOT NULL,
|
||||
country varchar(2) NOT NULL,
|
||||
latitude double precision NOT NULL,
|
||||
longitude double precision NOT NULL,
|
||||
elevation int NOT NULL
|
||||
);
|
||||
|
||||
-- create nwx.ncfam table
|
||||
DROP TABLE IF EXISTS nwx.ncfam CASCADE;
|
||||
CREATE TABLE nwx.ncfam(
|
||||
id SERIAL PRIMARY KEY,
|
||||
productid varchar(6) NOT NULL,
|
||||
stnid varchar(8) NOT NULL,
|
||||
stnname varchar(32) NOT NULL,
|
||||
state varchar(2) NOT NULL,
|
||||
country varchar(2) NOT NULL,
|
||||
latitude double precision NOT NULL,
|
||||
longitude double precision NOT NULL,
|
||||
elevation int NOT NULL
|
||||
);
|
||||
|
||||
-- create nwx.nesdisam table
|
||||
DROP TABLE IF EXISTS nwx.nesdisam CASCADE;
|
||||
CREATE TABLE nwx.nesdisam(
|
||||
id SERIAL PRIMARY KEY,
|
||||
productid varchar(6) NOT NULL,
|
||||
stnid varchar(8) NOT NULL,
|
||||
stnname varchar(32) NOT NULL,
|
||||
state varchar(2) NOT NULL,
|
||||
country varchar(2) NOT NULL,
|
||||
latitude double precision NOT NULL,
|
||||
longitude double precision NOT NULL,
|
||||
elevation int NOT NULL
|
||||
);
|
||||
|
||||
-- create nwx.nesdispm table
|
||||
DROP TABLE IF EXISTS nwx.nesdispm CASCADE;
|
||||
CREATE TABLE nwx.nesdispm(
|
||||
id SERIAL PRIMARY KEY,
|
||||
productid varchar(6) NOT NULL,
|
||||
stnid varchar(8) NOT NULL,
|
||||
stnname varchar(32) NOT NULL,
|
||||
state varchar(2) NOT NULL,
|
||||
country varchar(2) NOT NULL,
|
||||
latitude double precision NOT NULL,
|
||||
longitude double precision NOT NULL,
|
||||
elevation int NOT NULL
|
||||
);
|
||||
|
||||
-- create nwx.snwstgam table
|
||||
DROP TABLE IF EXISTS nwx.nwstgam CASCADE;
|
||||
CREATE TABLE nwx.nwstgam(
|
||||
id SERIAL PRIMARY KEY,
|
||||
productid varchar(6) NOT NULL,
|
||||
stnid varchar(8) NOT NULL,
|
||||
stnname varchar(32) NOT NULL,
|
||||
state varchar(2) NOT NULL,
|
||||
country varchar(2) NOT NULL,
|
||||
latitude double precision NOT NULL,
|
||||
longitude double precision NOT NULL,
|
||||
elevation int NOT NULL
|
||||
);
|
||||
|
||||
-- Drop nwx.sdm table
|
||||
DROP TABLE IF EXISTS nwx.sdm CASCADE;
|
||||
|
||||
-- create nwx.sdmam table
|
||||
DROP TABLE IF EXISTS nwx.sdmam CASCADE;
|
||||
CREATE TABLE nwx.sdmam(
|
||||
id SERIAL PRIMARY KEY,
|
||||
productid varchar(6) NOT NULL,
|
||||
stnid varchar(8) NOT NULL,
|
||||
stnname varchar(32) NOT NULL,
|
||||
state varchar(2) NOT NULL,
|
||||
country varchar(2) NOT NULL,
|
||||
latitude double precision NOT NULL,
|
||||
longitude double precision NOT NULL,
|
||||
elevation int NOT NULL
|
||||
);
|
||||
|
||||
-- create nwx.sdmim table
|
||||
DROP TABLE IF EXISTS nwx.sdmim CASCADE;
|
||||
CREATE TABLE nwx.sdmim(
|
||||
id SERIAL PRIMARY KEY,
|
||||
productid varchar(6) NOT NULL,
|
||||
stnid varchar(8) NOT NULL,
|
||||
stnname varchar(32) NOT NULL,
|
||||
state varchar(2) NOT NULL,
|
||||
country varchar(2) NOT NULL,
|
||||
latitude double precision NOT NULL,
|
||||
longitude double precision NOT NULL,
|
||||
elevation int NOT NULL
|
||||
);
|
||||
|
||||
-- create nwx.sdmdhm table
|
||||
DROP TABLE IF EXISTS nwx.sdmdhm CASCADE;
|
||||
CREATE TABLE nwx.sdmdhm(
|
||||
id SERIAL PRIMARY KEY,
|
||||
productid varchar(6) NOT NULL,
|
||||
stnid varchar(8) NOT NULL,
|
||||
stnname varchar(32) NOT NULL,
|
||||
state varchar(2) NOT NULL,
|
||||
country varchar(2) NOT NULL,
|
||||
latitude double precision NOT NULL,
|
||||
longitude double precision NOT NULL,
|
||||
elevation int NOT NULL
|
||||
);
|
||||
|
||||
INSERT INTO nwx.datatypegrouplist (datatypegroupname,datatypegrouptablename) values ('Admin Messages','nwx.adminmessages');
|
||||
INSERT INTO nwx.adminmessages(productname,producttablename,producttype) values ('SDM Administrative Messages','nwx.sdmam','sdmam');
|
||||
INSERT INTO nwx.sdmam (productid,stnid,stnname,state,country,latitude,longitude,elevation) values ('NOUS42','KWNO','NMC','MD','US',38.82,-76.87,86);
|
||||
INSERT INTO nwx.adminmessages(productname,producttablename,producttype) values ('SDM International Messages','nwx.sdmim','sdmim');
|
||||
INSERT INTO nwx.sdmim (productid,stnid,stnname,state,country,latitude,longitude,elevation) values ('NPXX10','KWNO','NMC','MD','US',38.82,-76.87,86);
|
||||
INSERT INTO nwx.adminmessages(productname,producttablename,producttype) values ('SDM DHS Hazards Messages','nwx.sdmdhm','sdmdhm');
|
||||
INSERT INTO nwx.sdmdhm (productid,stnid,stnname,state,country,latitude,longitude,elevation) values ('NOUS71','KWNO','NMC','MD','US',38.82,-76.87,86);
|
||||
INSERT INTO nwx.adminmessages(productname,producttablename,producttype) values ('CMC Administrative Messages','nwx.cmcam','cmcam');
|
||||
INSERT INTO nwx.cmcam (productid,stnid,stnname,state,country,latitude,longitude,elevation) values ('NOCN05', 'CWAO','MONTREAL_VAAC','CN','CN',45.47,-73.75,-9999);
|
||||
INSERT INTO nwx.cmcam (productid,stnid,stnname,state,country,latitude,longitude,elevation) values ('AACN01', 'CWAO','MONTREAL_VAAC','CN','CN',45.47,-73.75,-9999);
|
||||
INSERT INTO nwx.adminmessages(productname,producttablename,producttype) values ('NWSTG Administrative Messages','nwx.nwstgam','nwstgam');
|
||||
INSERT INTO nwx.nwstgam (productid,stnid,stnname,state,country,latitude,longitude,elevation) values ('NOXX01', 'KWBC','NMC','MD','US',38.82,-76.87,86);
|
||||
INSERT INTO nwx.adminmessages(productname,producttablename,producttype) values ('NCF Administrative Messages','nwx.ncfam','ncfam');
|
||||
INSERT INTO nwx.ncfam (productid,stnid,stnname,state,country,latitude,longitude,elevation) values ('NOUS72', 'KNCF','NMC','MD','US',38.82,-76.87,86);
|
||||
INSERT INTO nwx.adminmessages(productname,producttablename,producttype) values ('NESDIS Product Anomaly Messages','nwx.nesdispm','nesdispm');
|
||||
INSERT INTO nwx.nesdispm (productid,stnid,stnname,state,country,latitude,longitude,elevation) values ('NOUS71', 'KNES','NESDIS','MD','US',38.82,-76.87,86);
|
||||
INSERT INTO nwx.adminmessages(productname,producttablename,producttype) values ('NESDIS Administrative Messages','nwx.nesdisam','nesdisam');
|
||||
INSERT INTO nwx.nesdisam (productid,stnid,stnname,state,country,latitude,longitude,elevation) values ('NOUS72', 'KNES','NESDIS','MD','US',38.82,-76.87,86);
|
||||
|
||||
INSERT INTO awips.nctext_inputfile_type VALUES (181,'sdmdhm','W');
|
||||
INSERT INTO awips.nctext_inputfile_type VALUES (182,'cmcam','W');
|
||||
INSERT INTO awips.nctext_inputfile_type VALUES (183,'nwstgam','W');
|
||||
INSERT INTO awips.nctext_inputfile_type VALUES (184,'ncfam','W');
|
||||
INSERT INTO awips.nctext_inputfile_type VALUES (185,'nesdispm','W');
|
||||
INSERT INTO awips.nctext_inputfile_type VALUES (186,'nesdisam','W');
|
||||
INSERT INTO awips.nctext_inputfile_type VALUES (185,'sdmam','B');
|
||||
INSERT INTO awips.nctext_inputfile_type VALUES (186,'sdmim','W');
|
||||
|
||||
DELETE from nwx.hpcproducts where productname='SDM Messages';
|
||||
DELETE from nwx.hpcproducts where productname='International Messages';
|
||||
DROP TABLE nwx.sdm;
|
||||
DROP TABLE nwx.intl;
|
||||
|
|
@ -195,6 +195,15 @@ producttablename varchar(30) NOT NULL,
|
|||
producttype varchar(20) NOT NULL
|
||||
);
|
||||
|
||||
-- create nwx.adminmessages table
|
||||
DROP TABLE IF EXISTS nwx.adminmessages CASCADE;
|
||||
CREATE TABLE nwx.adminmessages(
|
||||
id SERIAL PRIMARY KEY,
|
||||
productname varchar(60) NOT NULL,
|
||||
producttablename varchar(30) NOT NULL,
|
||||
producttype varchar(20) NOT NULL
|
||||
);
|
||||
|
||||
-------------------------------------------------
|
||||
-- create nwx bulletin tables
|
||||
-- ---------------------------------------------
|
||||
|
@ -355,6 +364,20 @@ id SERIAL PRIMARY KEY,
|
|||
elevation int NOT NULL
|
||||
);
|
||||
|
||||
-- create nwx.cmcam table
|
||||
DROP TABLE IF EXISTS nwx.cmcam CASCADE;
|
||||
CREATE TABLE nwx.cmcam(
|
||||
id SERIAL PRIMARY KEY,
|
||||
productid varchar(6) NOT NULL,
|
||||
stnid varchar(8) NOT NULL,
|
||||
stnname varchar(32) NOT NULL,
|
||||
state varchar(2) NOT NULL,
|
||||
country varchar(2) NOT NULL,
|
||||
latitude double precision NOT NULL,
|
||||
longitude double precision NOT NULL,
|
||||
elevation int NOT NULL
|
||||
);
|
||||
|
||||
--create nwx.consig table
|
||||
DROP TABLE IF EXISTS nwx.consig CASCADE;
|
||||
CREATE TABLE nwx.consig(
|
||||
|
@ -1016,6 +1039,48 @@ id SERIAL PRIMARY KEY,
|
|||
elevation int NOT NULL
|
||||
);
|
||||
|
||||
-- create nwx.ncfam table
|
||||
DROP TABLE IF EXISTS nwx.ncfam CASCADE;
|
||||
CREATE TABLE nwx.ncfam(
|
||||
id SERIAL PRIMARY KEY,
|
||||
productid varchar(6) NOT NULL,
|
||||
stnid varchar(8) NOT NULL,
|
||||
stnname varchar(32) NOT NULL,
|
||||
state varchar(2) NOT NULL,
|
||||
country varchar(2) NOT NULL,
|
||||
latitude double precision NOT NULL,
|
||||
longitude double precision NOT NULL,
|
||||
elevation int NOT NULL
|
||||
);
|
||||
|
||||
-- create nwx.nesdisam table
|
||||
DROP TABLE IF EXISTS nwx.nesdisam CASCADE;
|
||||
CREATE TABLE nwx.nesdisam(
|
||||
id SERIAL PRIMARY KEY,
|
||||
productid varchar(6) NOT NULL,
|
||||
stnid varchar(8) NOT NULL,
|
||||
stnname varchar(32) NOT NULL,
|
||||
state varchar(2) NOT NULL,
|
||||
country varchar(2) NOT NULL,
|
||||
latitude double precision NOT NULL,
|
||||
longitude double precision NOT NULL,
|
||||
elevation int NOT NULL
|
||||
);
|
||||
|
||||
-- create nwx.nesdispam table
|
||||
DROP TABLE IF EXISTS nwx.nesdispam CASCADE;
|
||||
CREATE TABLE nwx.nesdispam(
|
||||
id SERIAL PRIMARY KEY,
|
||||
productid varchar(6) NOT NULL,
|
||||
stnid varchar(8) NOT NULL,
|
||||
stnname varchar(32) NOT NULL,
|
||||
state varchar(2) NOT NULL,
|
||||
country varchar(2) NOT NULL,
|
||||
latitude double precision NOT NULL,
|
||||
longitude double precision NOT NULL,
|
||||
elevation int NOT NULL
|
||||
);
|
||||
|
||||
-- create nwx.ngmgd table
|
||||
DROP TABLE IF EXISTS nwx.ngmgd CASCADE;
|
||||
CREATE TABLE nwx.ngmgd(
|
||||
|
@ -1058,6 +1123,20 @@ id SERIAL PRIMARY KEY,
|
|||
elevation int NOT NULL
|
||||
);
|
||||
|
||||
-- create nwx.snwstgam table
|
||||
DROP TABLE IF EXISTS nwx.nwstgam CASCADE;
|
||||
CREATE TABLE nwx.nwstgam(
|
||||
id SERIAL PRIMARY KEY,
|
||||
productid varchar(6) NOT NULL,
|
||||
stnid varchar(8) NOT NULL,
|
||||
stnname varchar(32) NOT NULL,
|
||||
state varchar(2) NOT NULL,
|
||||
country varchar(2) NOT NULL,
|
||||
latitude double precision NOT NULL,
|
||||
longitude double precision NOT NULL,
|
||||
elevation int NOT NULL
|
||||
);
|
||||
|
||||
-- create nwx.off table
|
||||
DROP TABLE IF EXISTS nwx.off CASCADE;
|
||||
CREATE TABLE nwx.off(
|
||||
|
@ -1400,9 +1479,37 @@ id SERIAL PRIMARY KEY,
|
|||
elevation int NOT NULL
|
||||
);
|
||||
|
||||
-- create nwx.sdm table
|
||||
DROP TABLE IF EXISTS nwx.sdm CASCADE;
|
||||
CREATE TABLE nwx.sdm(
|
||||
-- create nwx.sdmam table
|
||||
DROP TABLE IF EXISTS nwx.sdmam CASCADE;
|
||||
CREATE TABLE nwx.sdmam(
|
||||
id SERIAL PRIMARY KEY,
|
||||
productid varchar(6) NOT NULL,
|
||||
stnid varchar(8) NOT NULL,
|
||||
stnname varchar(32) NOT NULL,
|
||||
state varchar(2) NOT NULL,
|
||||
country varchar(2) NOT NULL,
|
||||
latitude double precision NOT NULL,
|
||||
longitude double precision NOT NULL,
|
||||
elevation int NOT NULL
|
||||
);
|
||||
|
||||
-- create nwx.sdmim table
|
||||
DROP TABLE IF EXISTS nwx.sdmim CASCADE;
|
||||
CREATE TABLE nwx.sdmim(
|
||||
id SERIAL PRIMARY KEY,
|
||||
productid varchar(6) NOT NULL,
|
||||
stnid varchar(8) NOT NULL,
|
||||
stnname varchar(32) NOT NULL,
|
||||
state varchar(2) NOT NULL,
|
||||
country varchar(2) NOT NULL,
|
||||
latitude double precision NOT NULL,
|
||||
longitude double precision NOT NULL,
|
||||
elevation int NOT NULL
|
||||
);
|
||||
|
||||
-- create nwx.sdmdhm table
|
||||
DROP TABLE IF EXISTS nwx.sdmdhm CASCADE;
|
||||
CREATE TABLE nwx.sdmdhm(
|
||||
id SERIAL PRIMARY KEY,
|
||||
productid varchar(6) NOT NULL,
|
||||
stnid varchar(8) NOT NULL,
|
||||
|
|
|
@ -25,3 +25,4 @@ ${1}/bin/psql -d ncep -U ${3} -q -p ${2} -f ${4}/loadNwxReconCARCAHBulletinTable
|
|||
${1}/bin/psql -d ncep -U ${3} -q -p ${2} -f ${4}/loadNwxSPCProductsBulletinTables.sql >> ${5} 2>&1
|
||||
${1}/bin/psql -d ncep -U ${3} -q -p ${2} -f ${4}/loadNwxTropicalPacificBulletinTables.sql >> ${5} 2>&1
|
||||
${1}/bin/psql -d ncep -U ${3} -q -p ${2} -f ${4}/loadNwxVolcanoProductsBulletinTables.sql >> ${5} 2>&1
|
||||
${1}/bin/psql -d ncep -U ${3} -q -p ${2} -f ${4}/loadNwxAdminMessagesBulletinTables.sql >> ${5} 2>&1
|
||||
|
|
|
@ -0,0 +1,40 @@
|
|||
-- load nwx.sdmam table
|
||||
copy nwx.sdmam (productid,stnid,stnname,state,country,latitude,longitude,elevation) FROM stdin with delimiter as ',';
|
||||
NOUS42,KWNO,NMC,MD,US,38.82,-76.87,86
|
||||
\.
|
||||
|
||||
-- load nwx.sdmim table
|
||||
copy nwx.sdmim (productid,stnid,stnname,state,country,latitude,longitude,elevation) FROM stdin with delimiter as ',';
|
||||
NPXX10,KWNO,NMC,MD,US,38.82,-76.87,86
|
||||
\.
|
||||
|
||||
-- load nwx.sdmdhm table
|
||||
copy nwx.sdmdhm (productid,stnid,stnname,state,country,latitude,longitude,elevation) FROM stdin with delimiter as ',';
|
||||
NOUS71,KWNO,NMC,MD,US,38.82,-76.87,86
|
||||
\.
|
||||
|
||||
-- load nwx.nwstgam table
|
||||
copy nwx.nwstgam (productid,stnid,stnname,state,country,latitude,longitude,elevation) FROM stdin with delimiter as ',';
|
||||
NOXX01,KWBC,NMC,MD,US,38.82,-76.87,86
|
||||
\.
|
||||
|
||||
-- load nwx.ncfam table
|
||||
copy nwx.ncfam (productid,stnid,stnname,state,country,latitude,longitude,elevation) FROM stdin with delimiter as ',';
|
||||
NOUS72,KNCF,NMC,MD,US,38.82,-76.87,86
|
||||
\.
|
||||
|
||||
-- load nwx.nesdispm table
|
||||
copy nwx.nesdispm (productid,stnid,stnname,state,country,latitude,longitude,elevation) FROM stdin with delimiter as ',';
|
||||
NOUS71,KNES,NMC,MD,US,38.82,-76.87,86
|
||||
\.
|
||||
|
||||
-- load nwx.nesdisam table
|
||||
copy nwx.nesdisam (productid,stnid,stnname,state,country,latitude,longitude,elevation) FROM stdin with delimiter as ',';
|
||||
NOUS72,KNES,NMC,MD,US,38.82,-76.87,86
|
||||
\.
|
||||
|
||||
-- load nwx.cmcam table
|
||||
copy nwx.cmcam (productid,stnid,stnname,state,country,latitude,longitude,elevation) FROM stdin with delimiter as ',';
|
||||
NOCN05,CWAO,MONTREAL_VAAC,CN,CN,45.47,-73.75,-9999
|
||||
AACN01,CWAO,MONTREAL_VAAC,CN,CN,45.47,-73.75,-9999
|
||||
\.
|
|
@ -64,6 +64,19 @@ HPC Heat Index,nwx.hpcheatindex
|
|||
CPC Products,nwx.cpcproducts
|
||||
Volcano Products,nwx.volcanoproducts
|
||||
Fire Weather Products,nwx.fireweatherproducts
|
||||
Admin Messages,nwx.adminmessages
|
||||
\.
|
||||
|
||||
--load nwx.adminmessages table
|
||||
copy nwx.adminmessages (productname,producttablename,producttype) FROM stdin with delimiter as ',' ;
|
||||
SDM Administrative Messages,nwx.sdmam,sdm
|
||||
SDM International Messages,nwx.sdmim,intl
|
||||
SDM DHS Hazards Messages,nwx.sdmdhm
|
||||
CMC Administrative Messages,nwx.cmcam
|
||||
NWSTG Administrative Messages,nwx.nwstgam
|
||||
NCF Administrative Messages,nwx.ncfam
|
||||
NESDIS Product Anomaly Messages,nwx.nesdispam
|
||||
NESDIS Administrative Messages,nwx.nesdisam
|
||||
\.
|
||||
|
||||
--load nwx.observeddataproducts table
|
||||
|
@ -135,8 +148,6 @@ Hawaii Discussion,nwx.pmdhi,PMDHI
|
|||
Alaska Discussion,nwx.pmdak,PMDAK
|
||||
S Amer Discussion,nwx.pmdsa,PMDSA
|
||||
Caribbean Discussion,nwx.pmdca,PMDCA
|
||||
SDM Messages,nwx.sdm,sdm
|
||||
International Messages,nwx.intl,intl
|
||||
Storm Summaries,nwx.stations,storm
|
||||
Model Diag Discussion,nwx.pmdhmd,PMDHMD
|
||||
Selected Cities,nwx.scs,SCS
|
||||
|
|
|
@ -8658,7 +8658,7 @@ copy nwx.sfstns (productid,stnid,stnname,state,country,latitude,longitude,elevat
|
|||
085010;LPFL;FLORES_ISLAND;--;AZ;39.45;-31.13;29
|
||||
999999;M97;TUNICA;MS;US;34.86;-90.35;59
|
||||
999999;MDD;MIDLAND;TX;US;32.04;-102.10;854
|
||||
890090;NZSP;AMUNDSEN-SCOTT_SOUTH_POLE_STN;--;NZ;-90.00;0.00;2830
|
||||
890090;NZSP;AMUNDSEN-SCOTT_SOUTH_POLE_STN;--;NZ;-89.99;0.01;2830
|
||||
999999;PCZ;WAUPACA;WI;US;44.33;-89.01;252
|
||||
999999;RCX;LADYSMITH;WI;US;45.50;-91.00;377
|
||||
800630;SKMR;MONTERIA/LOS_GARZON;--;CO;8.82;-75.85;26
|
||||
|
@ -10043,7 +10043,7 @@ copy nwx.snstns (productid,stnid,stnname,state,country,latitude,longitude,elevat
|
|||
87860;SAVC;COMODORO_RIVADAVIA_AERO;--;AG;-45.78;-67.50;46
|
||||
88889;EGYP;MOUNT_PLEASANT_AIRPORT;--;FK;-51.81;-58.45;73
|
||||
89002;--;NEUMAYER;--;AA;-70.66;-8.25;50
|
||||
89009;--;AMUNDSEN-SCOTT;--;AA;-90.00;0.00;2835
|
||||
89009;--;AMUNDSEN-SCOTT;--;AA;-89.99;0.01;2835
|
||||
89022;--;HALLEY;--;AA;-75.50;-26.65;30
|
||||
89050;--;BELLINGSHAUSEN_AWS;--;AA;-62.20;-58.93;14
|
||||
89055;--;BASE_MARAMBIO;--;AA;-64.23;-56.71;198
|
||||
|
|
|
@ -313,7 +313,7 @@ COPY stns.VORS(PKEY, STATION_ID, STATION_NUM, NAME, STATE, COUNTRY, LATITUDE, LO
|
|||
312,RBL,225,RED_BLUFF,CA,US,40.1,-122.24
|
||||
313,SEA,243,SEATTLE,WA,US,47.44,-122.31
|
||||
314,HUH,35,WHATCOM,WA,US,48.95,-122.58
|
||||
315,PDX,208,PORTLAND,OR,US,45.58,-122.6
|
||||
315,BTG,208,BATTLE_GROUND,WA,US,45.75,-122.59
|
||||
316,PYE,371,POINT_REYES,CA,US,38.08,-122.87
|
||||
317,OED,362,MEDFORD,OR,US,42.48,-122.91
|
||||
318,EUG,93,EUGENE,OR,US,44.12,-123.22
|
||||
|
|
|
@ -0,0 +1,35 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
||||
<!--
|
||||
This_software_was_developed_and_/_or_modified_by_Raytheon_Company,
|
||||
pursuant_to_Contract_DG133W-05-CQ-1067_with_the_US_Government.
|
||||
|
||||
U.S._EXPORT_CONTROLLED_TECHNICAL_DATA
|
||||
This_software_product_contains_export-restricted_data_whose
|
||||
export/transfer/disclosure_is_restricted_by_U.S._law._Dissemination
|
||||
to_non-U.S._persons_whether_in_the_United_States_or_abroad_requires
|
||||
an_export_license_or_other_authorization.
|
||||
|
||||
Contractor_Name:________Raytheon_Company
|
||||
Contractor_Address:_____6825_Pine_Street,_Suite_340
|
||||
________________________Mail_Stop_B8
|
||||
________________________Omaha,_NE_68106
|
||||
________________________402.291.0100
|
||||
|
||||
See_the_AWIPS_II_Master_Rights_File_("Master_Rights_File.pdf")_for
|
||||
further_licensing_information.
|
||||
-->
|
||||
<latLonGridCoverage>
|
||||
<name>ECMWF-wave-0p25deg</name>
|
||||
<description>Global Latitude/Longitude 0.25 deg Resolution</description>
|
||||
<la1>90.0</la1>
|
||||
<lo1>-180.0</lo1>
|
||||
<firstGridPointCorner>UpperLeft</firstGridPointCorner>
|
||||
<nx>1441</nx>
|
||||
<ny>685</ny>
|
||||
<dx>0.25</dx>
|
||||
<dy>0.25</dy>
|
||||
<spacingUnit>degree</spacingUnit>
|
||||
<la2>-81.0</la2>
|
||||
<lo2>180.0</lo2>
|
||||
</latLonGridCoverage>
|
||||
|
|
@ -0,0 +1,37 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
||||
<!--
|
||||
This_software_was_developed_and_/_or_modified_by_Raytheon_Company,
|
||||
pursuant_to_Contract_DG133W-05-CQ-1067_with_the_US_Government.
|
||||
|
||||
U.S._EXPORT_CONTROLLED_TECHNICAL_DATA
|
||||
This_software_product_contains_export-restricted_data_whose
|
||||
export/transfer/disclosure_is_restricted_by_U.S._law._Dissemination
|
||||
to_non-U.S._persons_whether_in_the_United_States_or_abroad_requires
|
||||
an_export_license_or_other_authorization.
|
||||
|
||||
Contractor_Name:________Raytheon_Company
|
||||
Contractor_Address:_____6825_Pine_Street,_Suite_340
|
||||
________________________Mail_Stop_B8
|
||||
________________________Omaha,_NE_68106
|
||||
________________________402.291.0100
|
||||
|
||||
See_the_AWIPS_II_Master_Rights_File_("Master_Rights_File.pdf")_for
|
||||
further_licensing_information.
|
||||
-->
|
||||
<lambertConformalGridCoverage>
|
||||
<name>14731025001</name>
|
||||
<description>HIRES - 5 km Western US</description>
|
||||
<la1>12.19</la1>
|
||||
<lo1>-133.459</lo1>
|
||||
<firstGridPointCorner>LowerLeft</firstGridPointCorner>
|
||||
<nx>1473</nx>
|
||||
<ny>1025</ny>
|
||||
<dx>5.079</dx>
|
||||
<dy>5.079</dy>
|
||||
<spacingUnit>km</spacingUnit>
|
||||
<minorAxis>6371229.0</minorAxis>
|
||||
<majorAxis>6371229.0</majorAxis>
|
||||
<lov>-95.0</lov>
|
||||
<latin1>25.</latin1>
|
||||
<latin2>25.</latin2>
|
||||
</lambertConformalGridCoverage>
|
|
@ -0,0 +1,32 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
||||
<!--
|
||||
This_software_was_developed_and_/_or_modified_by_Raytheon_Company,
|
||||
pursuant_to_Contract_DG133W-05-CQ-1067_with_the_US_Government.
|
||||
|
||||
U.S._EXPORT_CONTROLLED_TECHNICAL_DATA
|
||||
This_software_product_contains_export-restricted_data_whose
|
||||
export/transfer/disclosure_is_restricted_by_U.S._law._Dissemination
|
||||
to_non-U.S._persons_whether_in_the_United_States_or_abroad_requires
|
||||
an_export_license_or_other_authorization.
|
||||
|
||||
Contractor_Name:________Raytheon_Company
|
||||
Contractor_Address:_____6825_Pine_Street,_Suite_340
|
||||
________________________Mail_Stop_B8
|
||||
________________________Omaha,_NE_68106
|
||||
________________________402.291.0100
|
||||
|
||||
See_the_AWIPS_II_Master_Rights_File_("Master_Rights_File.pdf")_for
|
||||
further_licensing_information.
|
||||
-->
|
||||
<latLonGridCoverage>
|
||||
<name>1440721001</name>
|
||||
<description>High Resolution (0.25 by 0.25) CED grids</description>
|
||||
<la1>90.0</la1>
|
||||
<lo1>0.0</lo1>
|
||||
<firstGridPointCorner>UpperLeft</firstGridPointCorner>
|
||||
<nx>1440</nx>
|
||||
<ny>721</ny>
|
||||
<dx>.25</dx>
|
||||
<dy>.25</dy>
|
||||
<spacingUnit>degree</spacingUnit>
|
||||
</latLonGridCoverage>
|
|
@ -0,0 +1,37 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
||||
<!--
|
||||
This_software_was_developed_and_/_or_modified_by_Raytheon_Company,
|
||||
pursuant_to_Contract_DG133W-05-CQ-1067_with_the_US_Government.
|
||||
|
||||
U.S._EXPORT_CONTROLLED_TECHNICAL_DATA
|
||||
This_software_product_contains_export-restricted_data_whose
|
||||
export/transfer/disclosure_is_restricted_by_U.S._law._Dissemination
|
||||
to_non-U.S._persons_whether_in_the_United_States_or_abroad_requires
|
||||
an_export_license_or_other_authorization.
|
||||
|
||||
Contractor_Name:________Raytheon_Company
|
||||
Contractor_Address:_____6825_Pine_Street,_Suite_340
|
||||
________________________Mail_Stop_B8
|
||||
________________________Omaha,_NE_68106
|
||||
________________________402.291.0100
|
||||
|
||||
See_the_AWIPS_II_Master_Rights_File_("Master_Rights_File.pdf")_for
|
||||
further_licensing_information.
|
||||
-->
|
||||
<lambertConformalGridCoverage>
|
||||
<name>17991059001</name>
|
||||
<description>3 km LCC limited domain CONUS grid (used by HRRR)</description>
|
||||
<la1>21.138</la1>
|
||||
<lo1>-122.72</lo1>
|
||||
<firstGridPointCorner>LowerLeft</firstGridPointCorner>
|
||||
<nx>1799</nx>
|
||||
<ny>1059</ny>
|
||||
<dx>3.0</dx>
|
||||
<dy>3.0</dy>
|
||||
<spacingUnit>km</spacingUnit>
|
||||
<minorAxis>6371229.0</minorAxis>
|
||||
<majorAxis>6371229.0</majorAxis>
|
||||
<lov>-97.5</lov>
|
||||
<latin1>38.5</latin1>
|
||||
<latin2>38.5</latin2>
|
||||
</lambertConformalGridCoverage>
|
|
@ -0,0 +1,34 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
||||
<!--
|
||||
This_software_was_developed_and_/_or_modified_by_Raytheon_Company,
|
||||
pursuant_to_Contract_DG133W-05-CQ-1067_with_the_US_Government.
|
||||
|
||||
U.S._EXPORT_CONTROLLED_TECHNICAL_DATA
|
||||
This_software_product_contains_export-restricted_data_whose
|
||||
export/transfer/disclosure_is_restricted_by_U.S._law._Dissemination
|
||||
to_non-U.S._persons_whether_in_the_United_States_or_abroad_requires
|
||||
an_export_license_or_other_authorization.
|
||||
|
||||
Contractor_Name:________Raytheon_Company
|
||||
Contractor_Address:_____6825_Pine_Street,_Suite_340
|
||||
________________________Mail_Stop_B8
|
||||
________________________Omaha,_NE_68106
|
||||
________________________402.291.0100
|
||||
|
||||
See_the_AWIPS_II_Master_Rights_File_("Master_Rights_File.pdf")_for
|
||||
further_licensing_information.
|
||||
-->
|
||||
<latLonGridCoverage>
|
||||
<name>193</name>
|
||||
<description>Global Latitude/Longitude 0.25 deg Resolution</description>
|
||||
<la1>90.0</la1>
|
||||
<lo1>0.0</lo1>
|
||||
<firstGridPointCorner>UpperLeft</firstGridPointCorner>
|
||||
<nx>1440</nx>
|
||||
<ny>721</ny>
|
||||
<dx>.25</dx>
|
||||
<dy>.25</dy>
|
||||
<spacingUnit>degree</spacingUnit>
|
||||
<la2>-90.0</la2>
|
||||
<lo2>359.75</lo2>
|
||||
</latLonGridCoverage>
|
|
@ -11,20 +11,6 @@
|
|||
<gribModelSet>
|
||||
|
||||
<!-- SUBCENTER 0 -->
|
||||
<model>
|
||||
<name>ecens</name>
|
||||
<center>98</center>
|
||||
<subcenter>0</subcenter>
|
||||
<grid>360181001</grid>
|
||||
<process>
|
||||
<id>141</id>
|
||||
<id>142</id>
|
||||
<id>143</id>
|
||||
<id>144</id>
|
||||
<id>145</id>
|
||||
</process>
|
||||
</model>
|
||||
|
||||
<model>
|
||||
<name>ecmwfP25</name>
|
||||
<center>98</center>
|
||||
|
|
|
@ -1385,6 +1385,16 @@
|
|||
</process>
|
||||
</model>
|
||||
|
||||
<model>
|
||||
<name>HiResW-ARW-US</name>
|
||||
<center>7</center>
|
||||
<subcenter>0</subcenter>
|
||||
<grid>14731025001</grid>
|
||||
<process>
|
||||
<id>116</id>
|
||||
</process>
|
||||
</model>
|
||||
|
||||
<model>
|
||||
<name>HiResW-NMM-East</name>
|
||||
<center>7</center>
|
||||
|
@ -1446,6 +1456,17 @@
|
|||
</process>
|
||||
</model>
|
||||
|
||||
<model>
|
||||
<name>HiResW-NMM-US</name>
|
||||
<center>7</center>
|
||||
<subcenter>0</subcenter>
|
||||
<grid>14731025001</grid>
|
||||
<process>
|
||||
<id>112</id>
|
||||
</process>
|
||||
</model>
|
||||
|
||||
|
||||
<model>
|
||||
<name>hireswNmmGuam</name>
|
||||
<center>7</center>
|
||||
|
|
|
@ -211,6 +211,7 @@
|
|||
<alias base="MCDC">CLDM</alias>
|
||||
<alias base="MIXR">MIXR</alias>
|
||||
<alias base="MMSP">MMSL</alias>
|
||||
<alias base="MN2T66hr">TKMN06</alias>
|
||||
<alias base="MnT">TMNK</alias>
|
||||
<alias base="MnT1hr">TMNK01</alias>
|
||||
<alias base="MnT3hr">TMNK03</alias>
|
||||
|
@ -220,6 +221,7 @@
|
|||
<alias base="MnT18hr">TMNK18</alias>
|
||||
<alias base="MnT24hr">TMNK24</alias>
|
||||
<alias base="MnT48hr">TMNK48</alias>
|
||||
<alias base="MX2T66hr">TKMX06</alias>
|
||||
<alias base="MxT">TMXK</alias>
|
||||
<alias base="MxT1hr">TMXK01</alias>
|
||||
<alias base="MxT3hr">TMXK03</alias>
|
||||
|
@ -303,6 +305,7 @@
|
|||
<alias base="TCC18hr">TCLD18</alias>
|
||||
<alias base="TCC24hr">TCLD24</alias>
|
||||
<alias base="TCC48hr">TCLD48</alias>
|
||||
<alias base="TCWAT">TCWTR</alias>
|
||||
<alias base="ThP">TSTM</alias>
|
||||
<alias base="TOZNE">TOZO</alias>
|
||||
<alias base="TP">APCP</alias>
|
||||
|
|
|
@ -56,6 +56,7 @@ import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement;
|
|||
* PluginDataObject.
|
||||
* July 29, 2013 1028 ghull add AwwReportType enum
|
||||
* Feb 11, 2014 2784 rferrel Remove override of setIdentifier.
|
||||
* July 07, 2014 ??? D. Sushon add handling for TORNADO_WATCH in getReportType(..)
|
||||
*
|
||||
* </pre>
|
||||
*
|
||||
|
@ -111,8 +112,12 @@ public class AwwRecord extends PluginDataObject {
|
|||
if (rtStr.equals("THUNDERSTORM_REPORT")) {
|
||||
return SEVERE_THUNDERSTORM_WATCH;
|
||||
}
|
||||
if (rtStr.endsWith("STATUS REPORT")) {
|
||||
if (rtStr.equals("TORNADO_REPORT")) {
|
||||
return TORNADO_WATCH;
|
||||
}
|
||||
if (rtStr.endsWith("STATUS_REPORT")) {
|
||||
// ??? return AwwReportType.SEVERE_WEATHER_STATUS_NOTIFICATION
|
||||
return AwwReportType.STATUS_REPORT;
|
||||
}
|
||||
// WSTM is looking for
|
||||
if (rtStr.equals("WINTER_STORM")) {
|
||||
|
|
|
@ -10,11 +10,12 @@ import java.util.List;
|
|||
* <pre>
|
||||
* SOFTWARE HISTORY
|
||||
*
|
||||
* ate Ticket# Engineer Description
|
||||
* Date Ticket# Engineer Description
|
||||
* ----------- ---------- ---------- --------------------------
|
||||
* 05/14/2013 #989 qzhou Initial Creation
|
||||
* 03/18/2014 #1123 qzhou Add getHdevOrDDev
|
||||
* 04/09/2014 #1123 qzhou Modified getKIndex for gamma value
|
||||
* 06/23/2014 R4152 qzhou Fixed on getQHAQDC formula
|
||||
* </pre>
|
||||
*
|
||||
* @author qzhou
|
||||
|
@ -25,7 +26,7 @@ public class CalcEach1min {
|
|||
|
||||
private static final int MAX_GAP_LENGTH = 15;
|
||||
|
||||
private static final int SMOOTH_WINDOW = 60;//
|
||||
private static final int SMOOTH_WINDOW = 60;
|
||||
|
||||
private static final int TRANSITION_TIME = 60;
|
||||
|
||||
|
@ -103,14 +104,14 @@ public class CalcEach1min {
|
|||
|
||||
for (int i = 0; i < HOURS; i++) {
|
||||
fitLength[i] = 30.0f + defLength[i];
|
||||
ind[i] = (int) Math.floor(i / 3);
|
||||
ind[i] = (int) Math.floor(i / 3.0f);
|
||||
curK[i] = kIndex[ind[i]];
|
||||
|
||||
if (curK[i] != MISSING_VAL)
|
||||
fitLength[i] += kLength[(int) curK[i]];
|
||||
|
||||
if (fitLength[i] > 1440)
|
||||
fitLength[i] = 1440;
|
||||
if (fitLength[i] > 1440.0f)
|
||||
fitLength[i] = 1440.0f;
|
||||
}
|
||||
|
||||
return fitLength;
|
||||
|
@ -365,9 +366,11 @@ public class CalcEach1min {
|
|||
float jump = qdc[0] - qdc[1439];
|
||||
|
||||
for (int i = 0; i < SMOOTH_WINDOW; i++) {
|
||||
data[1440 - SMOOTH_WINDOW - i] += i / (SMOOTH_WINDOW - 1) * 0.5
|
||||
* jump;
|
||||
data[i] -= (1 - i / (SMOOTH_WINDOW - 1)) * 0.5 * jump;
|
||||
|
||||
data[1440 - SMOOTH_WINDOW + i] += ((float) i / (SMOOTH_WINDOW - 1))
|
||||
* 0.5f * jump;
|
||||
data[i] -= (1.0f - (float) i / (SMOOTH_WINDOW - 1)) * 0.5f * jump;
|
||||
|
||||
}
|
||||
|
||||
return data;
|
||||
|
|
|
@ -12,10 +12,11 @@ import java.util.Map;
|
|||
* <pre>
|
||||
* SOFTWARE HISTORY
|
||||
*
|
||||
* ate Ticket# Engineer Description
|
||||
* Date Ticket# Engineer Description
|
||||
* ----------- ---------- ---------- --------------------------
|
||||
* 05/14/2013 #989 qzhou Initial Creation
|
||||
* 03/18/2014 #1123 qzhou Add getHQdcOrDQdc
|
||||
* 06/23/2014 R4152 qzhou Touched up functions that do not affect the results
|
||||
* </pre>
|
||||
*
|
||||
* @author qzhou
|
||||
|
@ -162,27 +163,27 @@ public class CalcEach3hr {
|
|||
|
||||
for (int j = 0; j < DAYS; j++) {
|
||||
double sum = 0;
|
||||
int missing = 0;
|
||||
int count = 0;
|
||||
|
||||
int endOfArray = simpHrAvgH.length;
|
||||
int endTime = (endOfArray > j * HOURS + HOURS) ? j * HOURS + HOURS
|
||||
: endOfArray;
|
||||
for (int i = 0; i < 23; i++) {
|
||||
int ii = j * HOURS + i;
|
||||
|
||||
for (int i = j * HOURS; i < endTime - 1; i++) {
|
||||
|
||||
if (simpHrAvgH[i] != MISSING_VAL
|
||||
&& simpHrAvgD[i] != MISSING_VAL
|
||||
&& simpHrAvgH[i + 1] != MISSING_VAL
|
||||
&& simpHrAvgD[i + 1] != MISSING_VAL) {
|
||||
sum += Math.sqrt(Math.pow(
|
||||
(simpHrAvgH[i + 1] - simpHrAvgH[i]), 2)
|
||||
+ Math.pow((simpHrAvgD[i + 1] - simpHrAvgD[i]), 2));
|
||||
} else
|
||||
missing++;
|
||||
if (simpHrAvgH[ii] != MISSING_VAL
|
||||
&& simpHrAvgD[ii] != MISSING_VAL
|
||||
&& simpHrAvgH[ii + 1] != MISSING_VAL
|
||||
&& simpHrAvgD[ii + 1] != MISSING_VAL) {
|
||||
sum += Math
|
||||
.sqrt(Math.pow(
|
||||
(simpHrAvgH[ii + 1] - simpHrAvgH[ii]), 2)
|
||||
+ Math.pow(
|
||||
(simpHrAvgD[ii + 1] - simpHrAvgD[ii]),
|
||||
2));
|
||||
count++;
|
||||
}
|
||||
}
|
||||
|
||||
if (missing <= 12) // not 12 or more missing
|
||||
dB[j] = (float) sum / (HOURS - 1 - missing);
|
||||
if (count >= 12) // not 12 or more missing
|
||||
dB[j] = (float) sum / count;
|
||||
else
|
||||
dB[j] = MISSING_VAL;
|
||||
|
||||
|
@ -281,7 +282,7 @@ public class CalcEach3hr {
|
|||
if (dB[jk] < 1)
|
||||
wk = 1;
|
||||
else
|
||||
wk = 1 / (dB[jk] * dB[jk]);
|
||||
wk = 1.0f / (dB[jk] * dB[jk]);
|
||||
|
||||
if (smallHrAvg[ind] != MISSING_VAL) {
|
||||
sumAvg += wk * smallHrAvg[ind];
|
||||
|
|
|
@ -17,7 +17,7 @@ import java.util.Map;
|
|||
* <pre>
|
||||
* SOFTWARE HISTORY
|
||||
*
|
||||
* ate Ticket# Engineer Description
|
||||
* Date Ticket# Engineer Description
|
||||
* ----------- ---------- ---------- --------------------------
|
||||
* 05/14/2013 #989 qzhou Initial Creation
|
||||
* 03/18/2014 #1123 qzhou default k to 99999
|
||||
|
|
|
@ -19,9 +19,11 @@ import java.util.Map;
|
|||
* <pre>
|
||||
* SOFTWARE HISTORY
|
||||
*
|
||||
* ate Ticket# Engineer Description
|
||||
* Date Ticket# Engineer Description
|
||||
* ----------- ---------- ---------- --------------------------
|
||||
* 05/14/2013 #989 qzhou Initial Creation
|
||||
* 06/23/2014 R4152 qzhou Touched up 3 functions
|
||||
* 07/22/2014 R4152 qzhou Fixed getMedian. This func. is uesd very rare if ever
|
||||
* </pre>
|
||||
*
|
||||
* @author qzhou
|
||||
|
@ -181,7 +183,7 @@ public class CalcUtil {
|
|||
int[] kLimit = new int[10];
|
||||
int k9Limit = getK9Limit(station);
|
||||
for (int i = 0; i < kLimit.length; i++) {
|
||||
kLimit[i] = Math.round(k9Limit * getKConst(i) / 500);
|
||||
kLimit[i] = Math.round(k9Limit * getKConst(i) / 500.0f);
|
||||
}
|
||||
return kLimit;
|
||||
}
|
||||
|
@ -219,11 +221,11 @@ public class CalcUtil {
|
|||
return kIndex;
|
||||
}
|
||||
|
||||
public static int getGammaFromK(String station, int kIndex) {
|
||||
int gamma = getK9Limit(station) * getKConst(kIndex) / 500;
|
||||
|
||||
return gamma;
|
||||
}
|
||||
// public static int getGammaFromK(String station, int kIndex) {
|
||||
// int gamma = getK9Limit(station) * getKConst(kIndex) / 500;
|
||||
//
|
||||
// return gamma;
|
||||
// }
|
||||
|
||||
// assume db time format yyyy-mm-dd hh:mm:ss
|
||||
public static Date getSPTime(Date currTime) {
|
||||
|
@ -414,11 +416,11 @@ public class CalcUtil {
|
|||
public static boolean isLeapYear(int year) {
|
||||
boolean isLeap;
|
||||
|
||||
if (year / 400 == 0)
|
||||
if (year % 400 == 0)
|
||||
isLeap = true;
|
||||
else if (year / 100 == 0)
|
||||
else if (year % 100 == 0)
|
||||
isLeap = false;
|
||||
else if (year / 4 == 0)
|
||||
else if (year % 4 == 0)
|
||||
isLeap = true;
|
||||
else
|
||||
isLeap = false;
|
||||
|
@ -533,18 +535,18 @@ public class CalcUtil {
|
|||
|
||||
// remove missing data
|
||||
List<Float> newArray = new ArrayList<Float>();
|
||||
for (int k = 0; k < arraySort.length - 1; k++)
|
||||
for (int k = 0; k < arraySort.length; k++) {
|
||||
if (arraySort[k] != MISSING_VAL)
|
||||
newArray.add(arraySort[k]);
|
||||
else
|
||||
break; // to sorted arraySort
|
||||
}
|
||||
|
||||
int size = newArray.size();
|
||||
if (size / 2 == 0)
|
||||
if (size % 2 == 0)
|
||||
median = (newArray.get(size / 2) + newArray.get(size / 2 - 1)) / 2;
|
||||
else
|
||||
median = newArray.get((size - 1) / 2);
|
||||
|
||||
return median;
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -32,6 +32,7 @@ import com.raytheon.uf.edex.database.query.DatabaseQuery;
|
|||
* Date Ticket# Engineer Description
|
||||
* ------------ ---------- ----------- --------------------------
|
||||
* 2014/02/12 #1123 qzhou Moved from edex to here
|
||||
* 2014/06/27 #1136 qzhou Change hour avg to 0-current time
|
||||
*
|
||||
* </pre>
|
||||
*
|
||||
|
@ -63,10 +64,11 @@ public class DatabaseUtil {
|
|||
QueryParam.QueryOperand.LESSTHANEQUALS);
|
||||
Calendar cal = Calendar.getInstance();
|
||||
cal.setTime(time);
|
||||
cal.add(Calendar.HOUR_OF_DAY, -1);
|
||||
cal.set(Calendar.MINUTE, 0);
|
||||
// cal.add(Calendar.HOUR_OF_DAY, -1);
|
||||
|
||||
query.addQueryParam("dataTime.refTime", cal.getTime(),
|
||||
QueryParam.QueryOperand.GREATERTHAN);
|
||||
QueryParam.QueryOperand.GREATERTHANEQUALS);
|
||||
query.addQueryParam("stationCode", station);
|
||||
|
||||
List<?> resultsList = null;
|
||||
|
|
|
@ -0,0 +1,59 @@
|
|||
package gov.noaa.nws.ncep.common.dataplugin.geomag.request;
|
||||
|
||||
import java.util.Date;
|
||||
|
||||
import com.raytheon.uf.common.serialization.annotations.DynamicSerialize;
|
||||
import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement;
|
||||
import com.raytheon.uf.common.serialization.comm.IServerRequest;
|
||||
|
||||
/**
|
||||
*
|
||||
* Request for a GeoMagk1min for the given dataURI
|
||||
*
|
||||
* <pre>
|
||||
*
|
||||
* SOFTWARE HISTORY
|
||||
*
|
||||
* Date Ticket# Engineer Description
|
||||
* ------------ ---------- ----------- --------------------------
|
||||
* 2014/07/01 #1136 qzhou Init
|
||||
*
|
||||
* </pre>
|
||||
*
|
||||
* @author qzhou
|
||||
* @version 1.0
|
||||
*/
|
||||
@DynamicSerialize
|
||||
public class RetrieveSingleK1minRequest implements IServerRequest {
|
||||
|
||||
@DynamicSerializeElement
|
||||
private String stationCode;
|
||||
|
||||
@DynamicSerializeElement
|
||||
private Date refTime;
|
||||
|
||||
public RetrieveSingleK1minRequest() {
|
||||
}
|
||||
|
||||
public RetrieveSingleK1minRequest(String stationCode, Date refTime) {
|
||||
super();
|
||||
this.stationCode = stationCode;
|
||||
this.refTime = refTime;
|
||||
}
|
||||
|
||||
public String getStationCode() {
|
||||
return stationCode;
|
||||
}
|
||||
|
||||
public void setStationCode(String stationCode) {
|
||||
this.stationCode = stationCode;
|
||||
}
|
||||
|
||||
public Date getRefTime() {
|
||||
return refTime;
|
||||
}
|
||||
|
||||
public void setRefTime(Date refTime) {
|
||||
this.refTime = refTime;
|
||||
}
|
||||
}
|
|
@ -16,7 +16,7 @@
|
|||
* remove xml serialization as well *
|
||||
* 10/2011 S. Gurung Added changes related to getting stid/lat/lon/elev
|
||||
* from database instead of snstns.xml file
|
||||
*
|
||||
* 6/2014 T.Lee Added support XXAA, XXBB, XXCC, XXDD
|
||||
* </pre>
|
||||
*
|
||||
* This code has been developed by the SIB for use in the AWIPS2 system.
|
||||
|
@ -26,6 +26,12 @@
|
|||
|
||||
package gov.noaa.nws.ncep.common.dataplugin.ncuair.dao;
|
||||
|
||||
import gov.noaa.nws.ncep.common.dataplugin.ncuair.NcUairLiftedIndex;
|
||||
import gov.noaa.nws.ncep.common.dataplugin.ncuair.NcUairMaxWind;
|
||||
import gov.noaa.nws.ncep.common.dataplugin.ncuair.NcUairObsLevels;
|
||||
import gov.noaa.nws.ncep.common.dataplugin.ncuair.NcUairRecord;
|
||||
import gov.noaa.nws.ncep.common.dataplugin.ncuair.NcUairTropopause;
|
||||
|
||||
import java.io.File;
|
||||
import java.util.HashMap;
|
||||
import java.util.Iterator;
|
||||
|
@ -37,109 +43,213 @@ import com.raytheon.uf.common.pointdata.PointDataContainer;
|
|||
import com.raytheon.uf.common.pointdata.PointDataDescription;
|
||||
import com.raytheon.uf.common.pointdata.PointDataView;
|
||||
|
||||
import gov.noaa.nws.ncep.common.dataplugin.ncuair.NcUairLiftedIndex;
|
||||
import gov.noaa.nws.ncep.common.dataplugin.ncuair.NcUairMaxWind;
|
||||
import gov.noaa.nws.ncep.common.dataplugin.ncuair.NcUairObsLevels;
|
||||
import gov.noaa.nws.ncep.common.dataplugin.ncuair.NcUairTropopause;
|
||||
import gov.noaa.nws.ncep.common.dataplugin.ncuair.NcUairRecord;
|
||||
|
||||
public class NcUairToPointData {
|
||||
private static final String RAW_DATA = "RAWDATA";
|
||||
|
||||
private static final String UTC = "UTC";
|
||||
|
||||
private static final String REPORT_TYPE = "REPORTTYPE";
|
||||
|
||||
private static final String STATION_ID = "STATIONID";
|
||||
|
||||
private static final String ISSUE_TIME = "ISSUETIME";
|
||||
|
||||
private static final String OBS_TIME = "OBSTIME";
|
||||
|
||||
private static final String SYNOPTIC_TIME = "SYNOPTIME";
|
||||
|
||||
private static final String DATAURI = "DATAURI";
|
||||
|
||||
private static final String DATA_TYPE = "DATATYPE";
|
||||
|
||||
private static final String CORRECTION_INDICATOR = "CORR";
|
||||
|
||||
private static final String WMO_HEADER = "WMOHEADER";
|
||||
|
||||
private static final String STATION_NUMBER = "STNUM";
|
||||
|
||||
private static final String LATITUDE = "LATITUDE";
|
||||
|
||||
private static final String LONGITUDE = "LONGITUDE";
|
||||
|
||||
private static final String ELEVATION = "ELEVATION";
|
||||
|
||||
private static final String NIL = "NIL";
|
||||
|
||||
private static final String TTAA_PRES = "TTAA_PRES";
|
||||
|
||||
private static final String TTAA_TEMP = "TTAA_TEMP";
|
||||
|
||||
private static final String TTAA_DWPT = "TTAA_DWPT";
|
||||
|
||||
private static final String TTAA_DRCT = "TTAA_DRCT";
|
||||
|
||||
private static final String TTAA_SPED = "TTAA_SPED";
|
||||
|
||||
private static final String TTAA_HGHT = "TTAA_HGHT";
|
||||
|
||||
private static final String TTBB_PRES = "TTBB_PRES";
|
||||
|
||||
private static final String TTBB_TEMP = "TTBB_TEMP";
|
||||
|
||||
private static final String TTBB_DWPT = "TTBB_DWPT";
|
||||
|
||||
private static final String TTCC_PRES = "TTCC_PRES";
|
||||
|
||||
private static final String TTCC_TEMP = "TTCC_TEMP";
|
||||
|
||||
private static final String TTCC_DWPT = "TTCC_DWPT";
|
||||
|
||||
private static final String TTCC_DRCT = "TTCC_DRCT";
|
||||
|
||||
private static final String TTCC_SPED = "TTCC_SPED";
|
||||
|
||||
private static final String TTCC_HGHT = "TTCC_HGHT";
|
||||
|
||||
private static final String TTDD_PRES = "TTDD_PRES";
|
||||
|
||||
private static final String TTDD_TEMP = "TTDD_TEMP";
|
||||
|
||||
private static final String TTDD_DWPT = "TTDD_DWPT";
|
||||
|
||||
private static final String PPAA_PRES = "PPAA_PRES";
|
||||
|
||||
private static final String PPAA_TEMP = "PPAA_TEMP";
|
||||
|
||||
private static final String PPAA_DWPT = "PPAA_DWPT";
|
||||
|
||||
private static final String PPAA_DRCT = "PPAA_DRCT";
|
||||
|
||||
private static final String PPAA_SPED = "PPAA_SPED";
|
||||
|
||||
private static final String PPAA_HGHT = "PPAA_HGHT";
|
||||
|
||||
private static final String PPBB_DRCT = "PPBB_DRCT";
|
||||
|
||||
private static final String PPBB_SPED = "PPBB_SPED";
|
||||
|
||||
private static final String PPBB_HGHT = "PPBB_HGHT";
|
||||
|
||||
private static final String PPCC_PRES = "PPCC_PRES";
|
||||
|
||||
private static final String PPCC_TEMP = "PPCC_TEMP";
|
||||
|
||||
private static final String PPCC_DWPT = "PPCC_DWPT";
|
||||
|
||||
private static final String PPCC_DRCT = "PPCC_DRCT";
|
||||
|
||||
private static final String PPCC_SPED = "PPCC_SPED";
|
||||
|
||||
private static final String PPCC_HGHT = "PPCC_HGHT";
|
||||
|
||||
private static final String PPDD_DRCT = "PPDD_DRCT";
|
||||
|
||||
private static final String PPDD_SPED = "PPDD_SPED";
|
||||
|
||||
private static final String PPDD_HGHT = "PPDD_HGHT";
|
||||
|
||||
private static final String TROP_PRES = "TROP_PRES";
|
||||
|
||||
private static final String TROP_TEMP = "TROP_TEMP";
|
||||
|
||||
private static final String TROP_DWPT = "TROP_DWPT";
|
||||
|
||||
private static final String TROP_DRCT = "TROP_DRCT";
|
||||
|
||||
private static final String TROP_SPED = "TROP_SPED";
|
||||
|
||||
private static final String WMAX_PRES = "WMAX_PRES";
|
||||
|
||||
private static final String WMAX_DRCT = "WMAX_DRCT";
|
||||
|
||||
private static final String WMAX_SPED = "WMAX_SPED";
|
||||
|
||||
private static final String WMAX_LO_SHEAR = "WMAX_LO_SHEAR";
|
||||
|
||||
private static final String WMAX_HI_SHEAR = "WMAX_HI_SHEAR";
|
||||
|
||||
private static final String TTAA_LIFT = "TTAA_LIFT";
|
||||
|
||||
private static final String TTAA_LO_MEAN_DRCT = "TTAA_LO_MEAN_DRCT";
|
||||
|
||||
private static final String TTAA_LO_MEAN_SPED = "TTAA_LO_MEAN_SPED";
|
||||
|
||||
private static final String TTAA_HI_MEAN_DRCT = "TTAA_HI_MEAN_DRCT";
|
||||
|
||||
private static final String TTAA_HI_MEAN_SPED = "TTAA_HI_MEAN_SPED";
|
||||
|
||||
private static final String TTBB_LIFT = "TTBB_LIFT";
|
||||
|
||||
private static final String TTBB_LO_MEAN_DRCT = "TTBB_LO_MEAN_DRCT";
|
||||
|
||||
private static final String TTBB_LO_MEAN_SPED = "TTBB_LO_MEAN_SPED";
|
||||
|
||||
private static final String TTBB_HI_MEAN_DRCT = "TTBB_HI_MEAN_DRCT";
|
||||
|
||||
private static final String TTBB_HI_MEAN_SPED = "TTBB_HI_MEAN_SPED";
|
||||
|
||||
private enum REPORTTYPE {TTAA, TTBB, TTCC, TTDD, PPAA, PPBB, PPCC, PPDD,
|
||||
UUAA, UUBB, UUCC, UUDD, XXAA, XXBB, XXCC, XXDD};
|
||||
private static final String XXAA_PRES = "XXAA_PRES";
|
||||
|
||||
private static final String XXAA_TEMP = "XXAA_TEMP";
|
||||
|
||||
private static final String XXAA_DWPT = "XXAA_DWPT";
|
||||
|
||||
private static final String XXAA_DRCT = "XXAA_DRCT";
|
||||
|
||||
private static final String XXAA_SPED = "XXAA_SPED";
|
||||
|
||||
private static final String XXAA_HGHT = "XXAA_HGHT";
|
||||
|
||||
private static final String XXBB_PRES = "XXBB_PRES";
|
||||
|
||||
private static final String XXBB_TEMP = "XXBB_TEMP";
|
||||
|
||||
private static final String XXBB_DWPT = "XXBB_DWPT";
|
||||
|
||||
private static final String XXCC_PRES = "XXCC_PRES";
|
||||
|
||||
private static final String XXCC_TEMP = "XXCC_TEMP";
|
||||
|
||||
private static final String XXCC_DWPT = "XXCC_DWPT";
|
||||
|
||||
private static final String XXCC_DRCT = "XXCC_DRCT";
|
||||
|
||||
private static final String XXCC_SPED = "XXCC_SPED";
|
||||
|
||||
private static final String XXCC_HGHT = "XXCC_HGHT";
|
||||
|
||||
private static final String XXDD_PRES = "XXDD_PRES";
|
||||
|
||||
private static final String XXDD_TEMP = "XXDD_TEMP";
|
||||
|
||||
private static final String XXDD_DWPT = "XXDD_DWPT";
|
||||
|
||||
private enum REPORTTYPE {
|
||||
TTAA, TTBB, TTCC, TTDD, PPAA, PPBB, PPCC, PPDD, UUAA, UUBB, UUCC, UUDD, XXAA, XXBB, XXCC, XXDD
|
||||
};
|
||||
|
||||
/**
|
||||
* !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! It is important to
|
||||
* keep this up to date or risk breaking backwards compatibility
|
||||
* uu
|
||||
* keep this up to date or risk breaking backwards compatibility uu
|
||||
*/
|
||||
private static final String[] ALL_PARAMS = { RAW_DATA, UTC, REPORT_TYPE, STATION_ID,
|
||||
ISSUE_TIME, OBS_TIME, SYNOPTIC_TIME, DATAURI, DATA_TYPE, CORRECTION_INDICATOR,
|
||||
WMO_HEADER, STATION_NUMBER, LATITUDE, LONGITUDE, ELEVATION, NIL,
|
||||
TTAA_PRES, TTAA_TEMP, TTAA_DWPT, TTAA_DRCT, TTAA_SPED, TTAA_HGHT,
|
||||
TTBB_PRES, TTBB_TEMP, TTBB_DWPT,
|
||||
TTCC_PRES, TTCC_TEMP, TTCC_DWPT, TTCC_DRCT, TTCC_SPED, TTCC_HGHT,
|
||||
TTDD_PRES, TTDD_TEMP, TTDD_DWPT,
|
||||
PPAA_PRES, PPAA_TEMP, PPAA_DWPT, PPAA_DRCT, PPAA_SPED, PPAA_HGHT,
|
||||
PPBB_DRCT, PPBB_SPED, PPBB_HGHT,
|
||||
PPCC_PRES, PPCC_TEMP, PPCC_DWPT, PPCC_DRCT, PPCC_SPED, PPCC_HGHT,
|
||||
PPDD_DRCT, PPDD_SPED, PPDD_HGHT,
|
||||
TROP_PRES, TROP_TEMP, TROP_DWPT, TROP_DRCT, TROP_SPED, WMAX_PRES,
|
||||
WMAX_DRCT, WMAX_SPED, WMAX_LO_SHEAR, WMAX_HI_SHEAR,
|
||||
TTAA_LIFT, TTAA_LO_MEAN_DRCT, TTAA_LO_MEAN_SPED, TTAA_HI_MEAN_DRCT, TTAA_HI_MEAN_SPED,
|
||||
TTBB_LIFT, TTBB_LO_MEAN_DRCT, TTBB_LO_MEAN_SPED, TTBB_HI_MEAN_DRCT, TTAA_HI_MEAN_SPED,};
|
||||
private static final String[] ALL_PARAMS = { RAW_DATA, UTC, REPORT_TYPE,
|
||||
STATION_ID, ISSUE_TIME, OBS_TIME, SYNOPTIC_TIME, DATAURI,
|
||||
DATA_TYPE, CORRECTION_INDICATOR, WMO_HEADER, STATION_NUMBER,
|
||||
LATITUDE, LONGITUDE, ELEVATION, NIL, TTAA_PRES, TTAA_TEMP,
|
||||
TTAA_DWPT, TTAA_DRCT, TTAA_SPED, TTAA_HGHT, TTBB_PRES, TTBB_TEMP,
|
||||
TTBB_DWPT, TTCC_PRES, TTCC_TEMP, TTCC_DWPT, TTCC_DRCT, TTCC_SPED,
|
||||
TTCC_HGHT, TTDD_PRES, TTDD_TEMP, TTDD_DWPT, PPAA_PRES, PPAA_TEMP,
|
||||
PPAA_DWPT, PPAA_DRCT, PPAA_SPED, PPAA_HGHT, PPBB_DRCT, PPBB_SPED,
|
||||
PPBB_HGHT, PPCC_PRES, PPCC_TEMP, PPCC_DWPT, PPCC_DRCT, PPCC_SPED,
|
||||
PPCC_HGHT, PPDD_DRCT, PPDD_SPED, PPDD_HGHT, TROP_PRES, TROP_TEMP,
|
||||
TROP_DWPT, TROP_DRCT, TROP_SPED, WMAX_PRES, WMAX_DRCT, WMAX_SPED,
|
||||
WMAX_LO_SHEAR, WMAX_HI_SHEAR, TTAA_LIFT, TTAA_LO_MEAN_DRCT,
|
||||
TTAA_LO_MEAN_SPED, TTAA_HI_MEAN_DRCT, TTAA_HI_MEAN_SPED, TTBB_LIFT,
|
||||
TTBB_LO_MEAN_DRCT, TTBB_LO_MEAN_SPED, TTBB_HI_MEAN_DRCT,
|
||||
TTAA_HI_MEAN_SPED, XXAA_PRES, XXAA_TEMP, XXAA_DWPT, XXAA_DRCT,
|
||||
XXAA_SPED, XXAA_HGHT, XXBB_PRES, XXBB_TEMP, XXBB_DWPT, XXCC_PRES,
|
||||
XXCC_TEMP, XXCC_DWPT, XXCC_DRCT, XXCC_SPED, XXCC_HGHT, XXDD_PRES,
|
||||
XXDD_TEMP, XXDD_DWPT };
|
||||
|
||||
public static final String ALL_PARAMS_LIST;
|
||||
static {
|
||||
|
@ -172,7 +282,8 @@ public class NcUairToPointData {
|
|||
|
||||
public PluginDataObject[] toPointData(PluginDataObject[] pdo) {
|
||||
// long curTime = System.currentTimeMillis();
|
||||
//System.out.println("H5 uair toPointData entered, pdo size = "+ pdo.length);
|
||||
// System.out.println("H5 uair toPointData entered, pdo size = "+
|
||||
// pdo.length);
|
||||
if (pdo.length > 0) {
|
||||
Map<File, PointDataContainer> pointMap = new HashMap<File, PointDataContainer>();
|
||||
|
||||
|
@ -254,7 +365,8 @@ public class NcUairToPointData {
|
|||
if (record.getObsTime() != null)
|
||||
pdv.setLong(OBS_TIME, record.getObsTime().getTime().getTime());
|
||||
if (record.getSynopticTime() != null)
|
||||
pdv.setLong(SYNOPTIC_TIME, record.getSynopticTime().getTime().getTime());
|
||||
pdv.setLong(SYNOPTIC_TIME, record.getSynopticTime().getTime()
|
||||
.getTime());
|
||||
if (record.getIssueTime() != null)
|
||||
pdv.setLong(ISSUE_TIME, record.getIssueTime().getTime().getTime());
|
||||
pdv.setString(DATAURI, record.getDataURI());
|
||||
|
@ -274,7 +386,7 @@ public class NcUairToPointData {
|
|||
|
||||
case TTAA:
|
||||
case UUAA:
|
||||
case XXAA:
|
||||
|
||||
index = 0;
|
||||
if (sls != null) {
|
||||
while (sls.hasNext()) {
|
||||
|
@ -292,11 +404,30 @@ public class NcUairToPointData {
|
|||
pdv.setInt("numTTAA", index);
|
||||
}
|
||||
|
||||
break;
|
||||
case XXAA:
|
||||
index = 0;
|
||||
if (sls != null) {
|
||||
while (sls.hasNext()) {
|
||||
NcUairObsLevels sl = sls.next();
|
||||
if (sl.getPres() > 0 && index < maxManLevel) {
|
||||
pdv.setFloat(XXAA_PRES, sl.getPres(), index);
|
||||
pdv.setFloat(XXAA_HGHT, sl.getHght(), index);
|
||||
pdv.setFloat(XXAA_TEMP, sl.getTemp(), index);
|
||||
pdv.setFloat(XXAA_DWPT, sl.getDwpt(), index);
|
||||
pdv.setFloat(XXAA_DRCT, sl.getDrct(), index);
|
||||
pdv.setFloat(XXAA_SPED, sl.getSped(), index);
|
||||
index++;
|
||||
}
|
||||
}
|
||||
pdv.setInt("numXXAA", index);
|
||||
}
|
||||
|
||||
break;
|
||||
|
||||
case TTBB:
|
||||
case UUBB:
|
||||
case XXBB:
|
||||
|
||||
index = 0;
|
||||
if (sls != null) {
|
||||
while (sls.hasNext()) {
|
||||
|
@ -311,10 +442,25 @@ public class NcUairToPointData {
|
|||
pdv.setInt("numTTBB", index);
|
||||
}
|
||||
break;
|
||||
case XXBB:
|
||||
index = 0;
|
||||
if (sls != null) {
|
||||
while (sls.hasNext()) {
|
||||
NcUairObsLevels sl = sls.next();
|
||||
if (sl.getPres() > 0 && index < maxSigTempLevel) {
|
||||
pdv.setFloat(XXBB_PRES, sl.getPres(), index);
|
||||
pdv.setFloat(XXBB_TEMP, sl.getTemp(), index);
|
||||
pdv.setFloat(XXBB_DWPT, sl.getDwpt(), index);
|
||||
index++;
|
||||
}
|
||||
}
|
||||
pdv.setInt("numXXBB", index);
|
||||
}
|
||||
break;
|
||||
|
||||
case TTCC:
|
||||
case UUCC:
|
||||
case XXCC:
|
||||
|
||||
index = 0;
|
||||
if (sls != null) {
|
||||
while (sls.hasNext()) {
|
||||
|
@ -333,10 +479,29 @@ public class NcUairToPointData {
|
|||
pdv.setInt("numTTCC", index);
|
||||
}
|
||||
break;
|
||||
case XXCC:
|
||||
index = 0;
|
||||
if (sls != null) {
|
||||
while (sls.hasNext()) {
|
||||
NcUairObsLevels sl = sls.next();
|
||||
if (sl.getPres() > 0 && index < maxManLevel) {
|
||||
|
||||
pdv.setFloat(XXCC_PRES, sl.getPres(), index);
|
||||
pdv.setFloat(XXCC_HGHT, sl.getHght(), index);
|
||||
pdv.setFloat(XXCC_TEMP, sl.getTemp(), index);
|
||||
pdv.setFloat(XXCC_DWPT, sl.getDwpt(), index);
|
||||
pdv.setFloat(XXCC_DRCT, sl.getDrct(), index);
|
||||
pdv.setFloat(XXCC_SPED, sl.getSped(), index);
|
||||
index++;
|
||||
}
|
||||
}
|
||||
pdv.setInt("numXXCC", index);
|
||||
}
|
||||
break;
|
||||
|
||||
case TTDD:
|
||||
case UUDD:
|
||||
case XXDD:
|
||||
|
||||
index = 0;
|
||||
if (sls != null) {
|
||||
while (sls.hasNext()) {
|
||||
|
@ -351,6 +516,21 @@ public class NcUairToPointData {
|
|||
pdv.setInt("numTTDD", index);
|
||||
}
|
||||
break;
|
||||
case XXDD:
|
||||
index = 0;
|
||||
if (sls != null) {
|
||||
while (sls.hasNext()) {
|
||||
NcUairObsLevels sl = sls.next();
|
||||
if (sl.getPres() > 0 && index < maxSigTempLevel) {
|
||||
pdv.setFloat(XXDD_PRES, sl.getPres(), index);
|
||||
pdv.setFloat(XXDD_TEMP, sl.getTemp(), index);
|
||||
pdv.setFloat(XXDD_DWPT, sl.getDwpt(), index);
|
||||
index++;
|
||||
}
|
||||
}
|
||||
pdv.setInt("numXXDD", index);
|
||||
}
|
||||
break;
|
||||
|
||||
case PPAA:
|
||||
index = 0;
|
||||
|
@ -391,7 +571,8 @@ public class NcUairToPointData {
|
|||
if (sls != null) {
|
||||
while (sls.hasNext()) {
|
||||
NcUairObsLevels sl = sls.next();
|
||||
if ( (sl.getPres() > 0 || sl.getHght() > 0 ) && index < maxManLevel ) {
|
||||
if ((sl.getPres() > 0 || sl.getHght() > 0)
|
||||
&& index < maxManLevel) {
|
||||
pdv.setFloat(PPCC_PRES, sl.getPres(), index);
|
||||
pdv.setFloat(PPCC_HGHT, sl.getHght(), index);
|
||||
pdv.setFloat(PPCC_TEMP, sl.getTemp(), index);
|
||||
|
@ -424,9 +605,9 @@ public class NcUairToPointData {
|
|||
}
|
||||
}
|
||||
|
||||
|
||||
if (record.getTropopause() != null) {
|
||||
Iterator<NcUairTropopause> trops = record.getTropopause().iterator();
|
||||
Iterator<NcUairTropopause> trops = record.getTropopause()
|
||||
.iterator();
|
||||
index = 0;
|
||||
if (trops != null) {
|
||||
while (trops.hasNext()) {
|
||||
|
@ -464,7 +645,8 @@ public class NcUairToPointData {
|
|||
}
|
||||
|
||||
if (record.getLiftedIndex() != null) {
|
||||
Iterator<NcUairLiftedIndex> miscs = record.getLiftedIndex().iterator();
|
||||
Iterator<NcUairLiftedIndex> miscs = record.getLiftedIndex()
|
||||
.iterator();
|
||||
index = 0;
|
||||
if (miscs != null) {
|
||||
while (miscs.hasNext()) {
|
||||
|
@ -472,16 +654,24 @@ public class NcUairToPointData {
|
|||
if (index < maxMiscLevel) {
|
||||
if (record.getDataType().equals("TTAA")) {
|
||||
pdv.setFloat(TTAA_LIFT, misc.getLiTemp(), index);
|
||||
pdv.setFloat(TTAA_LO_MEAN_DRCT, misc.getLoDrct(), index);
|
||||
pdv.setFloat(TTAA_LO_MEAN_SPED, misc.getLoSped(), index);
|
||||
pdv.setFloat(TTAA_HI_MEAN_DRCT, misc.getHiDrct(), index);
|
||||
pdv.setFloat(TTAA_HI_MEAN_SPED, misc.getHiSped(), index);
|
||||
pdv.setFloat(TTAA_LO_MEAN_DRCT, misc.getLoDrct(),
|
||||
index);
|
||||
pdv.setFloat(TTAA_LO_MEAN_SPED, misc.getLoSped(),
|
||||
index);
|
||||
pdv.setFloat(TTAA_HI_MEAN_DRCT, misc.getHiDrct(),
|
||||
index);
|
||||
pdv.setFloat(TTAA_HI_MEAN_SPED, misc.getHiSped(),
|
||||
index);
|
||||
} else {
|
||||
pdv.setFloat(TTBB_LIFT, misc.getLiTemp(), index);
|
||||
pdv.setFloat(TTBB_LO_MEAN_DRCT, misc.getLoDrct(), index);
|
||||
pdv.setFloat(TTBB_LO_MEAN_SPED, misc.getLoSped(), index);
|
||||
pdv.setFloat(TTBB_HI_MEAN_DRCT, misc.getHiDrct(), index);
|
||||
pdv.setFloat(TTBB_HI_MEAN_SPED, misc.getHiSped(), index);
|
||||
pdv.setFloat(TTBB_LO_MEAN_DRCT, misc.getLoDrct(),
|
||||
index);
|
||||
pdv.setFloat(TTBB_LO_MEAN_SPED, misc.getLoSped(),
|
||||
index);
|
||||
pdv.setFloat(TTBB_HI_MEAN_DRCT, misc.getHiDrct(),
|
||||
index);
|
||||
pdv.setFloat(TTBB_HI_MEAN_SPED, misc.getHiSped(),
|
||||
index);
|
||||
}
|
||||
index++;
|
||||
}
|
||||
|
|
|
@ -14,7 +14,7 @@
|
|||
* 09/2011 457 S. Gurung Renamed H5 to Nc and h5 to nc
|
||||
* 10/2011 S. Gurung Added changes related to getting stid/lat/lon/elev
|
||||
* from database instead of snstns.xml file
|
||||
*
|
||||
* 6/2014 T.Lee Added support XXAA, XXBB, XXCC, XXDD
|
||||
* </pre>
|
||||
*
|
||||
* This code has been developed by the SIB for use in the AWIPS2 system.
|
||||
|
@ -24,6 +24,12 @@
|
|||
|
||||
package gov.noaa.nws.ncep.common.dataplugin.ncuair.dao;
|
||||
|
||||
import gov.noaa.nws.ncep.common.dataplugin.ncuair.NcUairLiftedIndex;
|
||||
import gov.noaa.nws.ncep.common.dataplugin.ncuair.NcUairMaxWind;
|
||||
import gov.noaa.nws.ncep.common.dataplugin.ncuair.NcUairObsLevels;
|
||||
import gov.noaa.nws.ncep.common.dataplugin.ncuair.NcUairRecord;
|
||||
import gov.noaa.nws.ncep.common.dataplugin.ncuair.NcUairTropopause;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.Set;
|
||||
|
@ -36,16 +42,11 @@ import com.raytheon.uf.common.pointdata.PointDataView;
|
|||
import com.raytheon.uf.common.pointdata.spatial.SurfaceObsLocation;
|
||||
import com.raytheon.uf.edex.decodertools.time.TimeTools;
|
||||
|
||||
import gov.noaa.nws.ncep.common.dataplugin.ncuair.NcUairLiftedIndex;
|
||||
import gov.noaa.nws.ncep.common.dataplugin.ncuair.NcUairMaxWind;
|
||||
import gov.noaa.nws.ncep.common.dataplugin.ncuair.NcUairObsLevels;
|
||||
import gov.noaa.nws.ncep.common.dataplugin.ncuair.NcUairTropopause;
|
||||
import gov.noaa.nws.ncep.common.dataplugin.ncuair.NcUairRecord;
|
||||
|
||||
public class NcUairToRecord {
|
||||
|
||||
/** The logger */
|
||||
private static Log logger = LogFactory.getLog(NcUairToRecord.class);
|
||||
|
||||
public static final String HDR_PARAMS_LIST;
|
||||
static {
|
||||
StringBuffer sb = new StringBuffer();
|
||||
|
@ -149,10 +150,36 @@ public class NcUairToRecord {
|
|||
sb.append("TTBB_LO_MEAN_DRCT,");
|
||||
sb.append("TTBB_LO_MEAN_SPED,");
|
||||
sb.append("TTBB_HI_MEAN_DRCT,");
|
||||
sb.append("TTBB_HI_MEAN_SPED");
|
||||
sb.append("TTBB_HI_MEAN_SPED,");
|
||||
// -------------------------
|
||||
sb.append("numXXAA,");
|
||||
sb.append("XXAA_PRES,");
|
||||
sb.append("XXAA_TEMP,");
|
||||
sb.append("XXAA_DWPT,");
|
||||
sb.append("XXAA_DRCT,");
|
||||
sb.append("XXAA_SPED,");
|
||||
sb.append("XXAA_HGHT,");
|
||||
// -------------------------
|
||||
sb.append("numXXBB,");
|
||||
sb.append("XXBB_PRES,");
|
||||
sb.append("XXBB_TEMP,");
|
||||
sb.append("XXBB_DWPT,");
|
||||
// --------------------------
|
||||
sb.append("numXXCC,");
|
||||
sb.append("XXCC_PRES,");
|
||||
sb.append("XXCC_TEMP,");
|
||||
sb.append("XXCC_DWPT,");
|
||||
sb.append("XXCC_DRCT,");
|
||||
sb.append("XXCC_SPED,");
|
||||
sb.append("XXCC_HGHT,");
|
||||
// -------------------------
|
||||
sb.append("numXXDD,");
|
||||
sb.append("XXDD_PRES,");
|
||||
sb.append("XXDD_TEMP,");
|
||||
sb.append("XXDD_DWPT");
|
||||
MAN_PARAMS_LIST = sb.toString();
|
||||
}
|
||||
|
||||
// static int count=0;
|
||||
private static NcUairRecord getNcUairRecord(PointDataView pdv) {
|
||||
NcUairRecord record = null;
|
||||
|
@ -166,8 +193,7 @@ public class NcUairToRecord {
|
|||
String uri = pdv.getString("DATAURI");
|
||||
logger.debug("URI = " + uri);
|
||||
record = new NcUairRecord(uri);
|
||||
}
|
||||
else{
|
||||
} else {
|
||||
// System.out.println("no data uri");
|
||||
record = new NcUairRecord();
|
||||
}
|
||||
|
@ -210,6 +236,7 @@ public class NcUairToRecord {
|
|||
}
|
||||
return record;
|
||||
}
|
||||
|
||||
private static NcUairRecord getTTAA(PointDataView pdv, NcUairRecord record) {
|
||||
NcUairObsLevels obslevels;
|
||||
|
||||
|
@ -429,6 +456,7 @@ public class NcUairToRecord {
|
|||
}
|
||||
return record;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param pdv
|
||||
* @param record
|
||||
|
@ -495,6 +523,7 @@ public class NcUairToRecord {
|
|||
}
|
||||
return record;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param pdv
|
||||
* @param record
|
||||
|
@ -529,6 +558,7 @@ public class NcUairToRecord {
|
|||
}
|
||||
return record;
|
||||
}
|
||||
|
||||
private static NcUairRecord getTTDD(PointDataView pdv, NcUairRecord record) {
|
||||
if (record != null) {
|
||||
Set<String> parameters = pdv.getContainer().getParameters();
|
||||
|
@ -566,7 +596,6 @@ public class NcUairToRecord {
|
|||
temp = pdv.getNumberAllLevels("TTBB_TEMP");
|
||||
dwpt = pdv.getNumberAllLevels("TTBB_DWPT");
|
||||
|
||||
|
||||
for (int i = 0; i < numTTBB.intValue(); i++) {
|
||||
NcUairObsLevels obslevels = new NcUairObsLevels();
|
||||
obslevels.setPres(pres[i].floatValue());
|
||||
|
@ -606,12 +635,238 @@ public class NcUairToRecord {
|
|||
return record;
|
||||
}
|
||||
|
||||
private static NcUairRecord getXXAA(PointDataView pdv, NcUairRecord record) {
|
||||
NcUairObsLevels obslevels;
|
||||
// System.out.println(" GetXXAA !!!!!!!");
|
||||
|
||||
/*
|
||||
* Add XXAA data
|
||||
*/
|
||||
if (record != null) {
|
||||
Set<String> parameters = pdv.getContainer().getParameters();
|
||||
// for (String pam : parameters)
|
||||
// System.out.println("parm=" + pam);
|
||||
Number[] pres, hght, temp, dwpt, drct, sped;
|
||||
if (parameters.contains("numXXAA")) {
|
||||
Number numXXAA = pdv.getInt("numXXAA");
|
||||
if (numXXAA != null) {
|
||||
// System.out.println("numXXAA=" + numXXAA);
|
||||
pres = pdv.getNumberAllLevels("XXAA_PRES");
|
||||
hght = pdv.getNumberAllLevels("XXAA_HGHT");
|
||||
temp = pdv.getNumberAllLevels("XXAA_TEMP");
|
||||
dwpt = pdv.getNumberAllLevels("XXAA_DWPT");
|
||||
drct = pdv.getNumberAllLevels("XXAA_DRCT");
|
||||
sped = pdv.getNumberAllLevels("XXAA_SPED");
|
||||
|
||||
for (int i = 0; i < numXXAA.intValue(); i++) {
|
||||
obslevels = new NcUairObsLevels();
|
||||
obslevels.setPres(pres[i].floatValue());
|
||||
obslevels.setHght(hght[i].floatValue());
|
||||
obslevels.setTemp(temp[i].floatValue());
|
||||
obslevels.setDwpt(dwpt[i].floatValue());
|
||||
obslevels.setDrct(drct[i].floatValue());
|
||||
obslevels.setSped(sped[i].floatValue());
|
||||
// System.out.println("level pres=" +
|
||||
// obslevels.getPres());
|
||||
record.addObsLevels(obslevels);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* Add tropopause data
|
||||
*/
|
||||
if (parameters.contains("numTrop")) {
|
||||
Number numTrop = pdv.getInt("numTrop");
|
||||
if (numTrop != null) {
|
||||
// System.out.println("numTropA="+numTrop);
|
||||
pres = pdv.getNumberAllLevels("TROP_PRES");
|
||||
temp = pdv.getNumberAllLevels("TROP_TEMP");
|
||||
dwpt = pdv.getNumberAllLevels("TROP_DWPT");
|
||||
drct = pdv.getNumberAllLevels("TROP_DRCT");
|
||||
sped = pdv.getNumberAllLevels("TROP_SPED");
|
||||
for (int i = 0; i < numTrop.intValue(); i++) {
|
||||
NcUairTropopause trop = new NcUairTropopause();
|
||||
trop.setPres(pres[i].floatValue());
|
||||
trop.setTemp(temp[i].floatValue());
|
||||
trop.setDwpt(dwpt[i].floatValue());
|
||||
trop.setDrct(drct[i].floatValue());
|
||||
trop.setSped(sped[i].floatValue());
|
||||
record.addTropopause(trop);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* Add max wind data
|
||||
*/
|
||||
if (parameters.contains("numWmax")) {
|
||||
Number numWmax = pdv.getInt("numWmax");
|
||||
if (numWmax != null) {
|
||||
// System.out.println("numWmaxA="+numWmax);
|
||||
Number[] lo_shear = pdv.getNumberAllLevels("WMAX_LO_SHEAR");
|
||||
Number[] hi_shear = pdv.getNumberAllLevels("WMAX_HI_SHEAR");
|
||||
pres = pdv.getNumberAllLevels("WMAX_PRES");
|
||||
drct = pdv.getNumberAllLevels("WMAX_DRCT");
|
||||
sped = pdv.getNumberAllLevels("WMAX_SPED");
|
||||
|
||||
for (int i = 0; i < numWmax.intValue(); i++) {
|
||||
NcUairMaxWind wmax = new NcUairMaxWind();
|
||||
wmax.setPres(pres[i].floatValue());
|
||||
wmax.setDrct(drct[i].floatValue());
|
||||
wmax.setSped(sped[i].floatValue());
|
||||
wmax.setHiShear(hi_shear[i].floatValue());
|
||||
wmax.setLoShear(lo_shear[i].floatValue());
|
||||
record.addMaxWind(wmax);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
if (record == null) {
|
||||
System.out.println(" NcUairToRecord/ record is null!!!!!!!");
|
||||
}
|
||||
return record;
|
||||
}
|
||||
|
||||
private static NcUairRecord getXXCC(PointDataView pdv, NcUairRecord record) {
|
||||
if (record != null) {
|
||||
Set<String> parameters = pdv.getContainer().getParameters();
|
||||
Number[] pres, hght, temp, dwpt, drct, sped;
|
||||
if (parameters.contains("numXXCC")) {
|
||||
Number numXXCC = pdv.getInt("numXXCC");
|
||||
if (numXXCC != null) {
|
||||
// System.out.println("numXXCC="+numXXCC);
|
||||
NcUairObsLevels obslevels;
|
||||
pres = pdv.getNumberAllLevels("XXCC_PRES");
|
||||
hght = pdv.getNumberAllLevels("XXCC_HGHT");
|
||||
temp = pdv.getNumberAllLevels("XXCC_TEMP");
|
||||
dwpt = pdv.getNumberAllLevels("XXCC_DWPT");
|
||||
drct = pdv.getNumberAllLevels("XXCC_DRCT");
|
||||
sped = pdv.getNumberAllLevels("XXCC_SPED");
|
||||
for (int i = 0; i < numXXCC.intValue(); i++) {
|
||||
obslevels = new NcUairObsLevels();
|
||||
obslevels.setPres(pres[i].floatValue());
|
||||
obslevels.setHght(hght[i].floatValue());
|
||||
obslevels.setTemp(temp[i].floatValue());
|
||||
obslevels.setDwpt(dwpt[i].floatValue());
|
||||
obslevels.setDrct(drct[i].floatValue());
|
||||
obslevels.setSped(sped[i].floatValue());
|
||||
record.addObsLevels(obslevels);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* Add tropopause data
|
||||
*/
|
||||
if (parameters.contains("numTrop")) {
|
||||
Number numTrop = pdv.getInt("numTrop");
|
||||
if (numTrop != null) {
|
||||
// System.out.println("numTropC="+numTrop);
|
||||
pres = pdv.getNumberAllLevels("TROP_PRES");
|
||||
temp = pdv.getNumberAllLevels("TROP_TEMP");
|
||||
dwpt = pdv.getNumberAllLevels("TROP_DWPT");
|
||||
drct = pdv.getNumberAllLevels("TROP_DRCT");
|
||||
sped = pdv.getNumberAllLevels("TROP_SPED");
|
||||
for (int i = 0; i < numTrop.intValue(); i++) {
|
||||
NcUairTropopause trop = new NcUairTropopause();
|
||||
trop.setPres(pres[i].floatValue());
|
||||
trop.setTemp(temp[i].floatValue());
|
||||
trop.setDwpt(dwpt[i].floatValue());
|
||||
trop.setDrct(drct[i].floatValue());
|
||||
trop.setSped(sped[i].floatValue());
|
||||
record.addTropopause(trop);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* Add max wind data
|
||||
*/
|
||||
if (parameters.contains("numWmax")) {
|
||||
Number numWmax = pdv.getInt("numWmax");
|
||||
if (numWmax != null) {
|
||||
// System.out.println("numWmaxC="+numWmax);
|
||||
Number[] lo_shear = pdv.getNumberAllLevels("WMAX_LO_SHEAR");
|
||||
Number[] hi_shear = pdv.getNumberAllLevels("WMAX_HI_SHEAR");
|
||||
pres = pdv.getNumberAllLevels("WMAX_PRES");
|
||||
drct = pdv.getNumberAllLevels("WMAX_DRCT");
|
||||
sped = pdv.getNumberAllLevels("WMAX_SPED");
|
||||
|
||||
for (int i = 0; i < numWmax.intValue(); i++) {
|
||||
NcUairMaxWind wmax = new NcUairMaxWind();
|
||||
wmax.setPres(pres[i].floatValue());
|
||||
wmax.setDrct(drct[i].floatValue());
|
||||
wmax.setSped(sped[i].floatValue());
|
||||
wmax.setHiShear(hi_shear[i].floatValue());
|
||||
wmax.setLoShear(lo_shear[i].floatValue());
|
||||
record.addMaxWind(wmax);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
return record;
|
||||
}
|
||||
|
||||
private static NcUairRecord getXXBB(PointDataView pdv, NcUairRecord record) {
|
||||
if (record != null) {
|
||||
Set<String> parameters = pdv.getContainer().getParameters();
|
||||
if (parameters.contains("numXXBB")) {
|
||||
|
||||
Number numXXBB = pdv.getInt("numXXBB");
|
||||
if (numXXBB != null) {
|
||||
// System.out.println("numXXBB="+numXXBB);
|
||||
Number[] pres, temp, dwpt;
|
||||
pres = pdv.getNumberAllLevels("XXBB_PRES");
|
||||
temp = pdv.getNumberAllLevels("XXBB_TEMP");
|
||||
dwpt = pdv.getNumberAllLevels("XXBB_DWPT");
|
||||
|
||||
for (int i = 0; i < numXXBB.intValue(); i++) {
|
||||
NcUairObsLevels obslevels = new NcUairObsLevels();
|
||||
obslevels.setPres(pres[i].floatValue());
|
||||
obslevels.setTemp(temp[i].floatValue());
|
||||
obslevels.setDwpt(dwpt[i].floatValue());
|
||||
record.addObsLevels(obslevels);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
return record;
|
||||
}
|
||||
|
||||
private static NcUairRecord getXXDD(PointDataView pdv, NcUairRecord record) {
|
||||
if (record != null) {
|
||||
Set<String> parameters = pdv.getContainer().getParameters();
|
||||
if (parameters.contains("numXXDD")) {
|
||||
Number numXXDD = pdv.getInt("numXXDD");
|
||||
if (numXXDD != null) {
|
||||
Number[] pres, temp, dwpt;
|
||||
// System.out.println("numXXDD="+numXXDD);
|
||||
pres = pdv.getNumberAllLevels("XXDD_PRES");
|
||||
temp = pdv.getNumberAllLevels("XXDD_TEMP");
|
||||
dwpt = pdv.getNumberAllLevels("XXDD_DWPT");
|
||||
for (int i = 0; i < numXXDD.intValue(); i++) {
|
||||
NcUairObsLevels obslevels = new NcUairObsLevels();
|
||||
obslevels.setPres(pres[i].floatValue());
|
||||
obslevels.setTemp(temp[i].floatValue());
|
||||
obslevels.setDwpt(dwpt[i].floatValue());
|
||||
record.addObsLevels(obslevels);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
return record;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param container
|
||||
* @return
|
||||
*/
|
||||
|
||||
private enum DATATYPE {TTAA, TTBB, TTCC, TTDD, PPAA, PPBB, PPCC, PPDD, XXAA, XXBB, XXCC, XXDD, UUAA, UUBB, UUCC, UUDD};
|
||||
private enum DATATYPE {
|
||||
TTAA, TTBB, TTCC, TTDD, PPAA, PPBB, PPCC, PPDD, XXAA, XXBB, XXCC, XXDD, UUAA, UUBB, UUCC, UUDD
|
||||
};
|
||||
|
||||
public static NcUairRecord[] toNcUairRecords(PointDataContainer container) {
|
||||
List<NcUairRecord> records = new ArrayList<NcUairRecord>();
|
||||
container.setCurrentSz(container.getAllocatedSz());
|
||||
|
@ -644,6 +899,18 @@ public class NcUairToRecord {
|
|||
case PPDD:
|
||||
record = getPPDD(pdv, record);
|
||||
break;
|
||||
case XXAA:
|
||||
record = getXXAA(pdv, record);
|
||||
break;
|
||||
case XXCC:
|
||||
record = getXXCC(pdv, record);
|
||||
break;
|
||||
case XXBB:
|
||||
record = getXXBB(pdv, record);
|
||||
break;
|
||||
case XXDD:
|
||||
record = getXXDD(pdv, record);
|
||||
break;
|
||||
default:
|
||||
continue;
|
||||
}
|
||||
|
@ -652,7 +919,9 @@ public class NcUairToRecord {
|
|||
}
|
||||
return records.toArray(new NcUairRecord[records.size()]);
|
||||
}
|
||||
public static List<NcUairRecord> toNcUairRecordsList(PointDataContainer container) {
|
||||
|
||||
public static List<NcUairRecord> toNcUairRecordsList(
|
||||
PointDataContainer container) {
|
||||
List<NcUairRecord> records = new ArrayList<NcUairRecord>();
|
||||
container.setCurrentSz(container.getAllocatedSz());
|
||||
for (int i = 0; i < container.getCurrentSz(); i++) {
|
||||
|
@ -684,6 +953,18 @@ public class NcUairToRecord {
|
|||
case PPDD:
|
||||
record = getPPDD(pdv, record);
|
||||
break;
|
||||
case XXAA:
|
||||
record = getXXAA(pdv, record);
|
||||
break;
|
||||
case XXCC:
|
||||
record = getXXCC(pdv, record);
|
||||
break;
|
||||
case XXBB:
|
||||
record = getXXBB(pdv, record);
|
||||
break;
|
||||
case XXDD:
|
||||
record = getXXDD(pdv, record);
|
||||
break;
|
||||
default:
|
||||
continue;
|
||||
}
|
||||
|
|
|
@ -1,6 +1,5 @@
|
|||
package gov.noaa.nws.ncep.edex.common.metparameters;
|
||||
|
||||
|
||||
//import gov.noaa.nws.ncep.edex.common.metparameters.AbstractMetParameter;
|
||||
//import gov.noaa.nws.ncep.edex.common.metparameters.Amount;
|
||||
|
||||
|
@ -24,22 +23,23 @@ import javax.xml.bind.annotation.XmlAccessType;
|
|||
import javax.xml.bind.annotation.XmlAccessorType;
|
||||
import javax.xml.bind.annotation.XmlRootElement;
|
||||
|
||||
import com.raytheon.uf.common.time.DataTime;
|
||||
import com.raytheon.uf.common.time.DataTime.FLAG;
|
||||
import com.raytheon.uf.common.serialization.ISerializableObject;
|
||||
import com.raytheon.uf.common.serialization.adapters.UnitAdapter;
|
||||
import com.raytheon.uf.common.serialization.annotations.DynamicSerialize;
|
||||
import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement;
|
||||
import com.raytheon.uf.common.time.DataTime;
|
||||
import com.raytheon.uf.common.time.DataTime.FLAG;
|
||||
|
||||
/**
|
||||
* An abstract class for all metParameters. This will hold the value of the parameter and
|
||||
* its units.
|
||||
* An abstract class for all metParameters. This will hold the value of the
|
||||
* parameter and its units.
|
||||
*
|
||||
* TODO : add support for the Level/Layer at which the value applies. The level could be a PressureLevel,
|
||||
* a Height or 'Surface' or other defined layer. This would allow the derive methods to remove the PressureLevel
|
||||
* derive() arguements and do a compatibility check on the other arguements to make sure they are all from the same
|
||||
* level.
|
||||
* Could also add support for the time or duration for which the value applies.
|
||||
* TODO : add support for the Level/Layer at which the value applies. The level
|
||||
* could be a PressureLevel, a Height or 'Surface' or other defined layer. This
|
||||
* would allow the derive methods to remove the PressureLevel derive()
|
||||
* arguements and do a compatibility check on the other arguements to make sure
|
||||
* they are all from the same level. Could also add support for the time or
|
||||
* duration for which the value applies.
|
||||
*
|
||||
*
|
||||
* TODO : make this a generic for a Quantity? ... AbstractMetParameter<Q extents Quantity>
|
||||
|
@ -55,6 +55,7 @@ import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement;
|
|||
* 10/05/2011 Greg Hull add dataTime
|
||||
* 10/14/2011 Greg Hull add setValueFromString
|
||||
* 11/14/2011 B. Hebbard remove standardUnit
|
||||
* 06/17/2014 S. Russell TTR 923: added member, get/set methods associatedMetParam
|
||||
*
|
||||
* </pre>
|
||||
*
|
||||
|
@ -69,6 +70,7 @@ public abstract class AbstractMetParameter extends Amount implements Quantity, I
|
|||
/**
|
||||
*
|
||||
*/
|
||||
|
||||
@DynamicSerializeElement
|
||||
private static final long serialVersionUID = 7369542461296836406L;
|
||||
|
||||
|
@ -76,6 +78,7 @@ public abstract class AbstractMetParameter extends Amount implements Quantity, I
|
|||
super();
|
||||
listOfInputMetPrmNamesForDerivingThisMetPrm = new ArrayList<String>(0);
|
||||
}
|
||||
|
||||
@DynamicSerializeElement
|
||||
private boolean useStringValue; // override to true for String parameters.
|
||||
|
||||
|
@ -90,12 +93,30 @@ public abstract class AbstractMetParameter extends Amount implements Quantity, I
|
|||
// return standardUnit;
|
||||
// }
|
||||
|
||||
// TTR 923, Holds the second MetParameter in a combination
|
||||
// AbstractMetParameter uch as the PTND "button"
|
||||
// (PressPressureChange3HrAndTendency MetParameter )
|
||||
@DynamicSerializeElement
|
||||
private AbstractMetParameter associatedMetParam = null;
|
||||
|
||||
protected List<String> listOfInputMetPrmNamesForDerivingThisMetPrm;
|
||||
|
||||
public final List<String> getListOfInputMetPrmNamesForDerivingThisMetParameter() {
|
||||
return listOfInputMetPrmNamesForDerivingThisMetPrm;
|
||||
}
|
||||
|
||||
// TTR 923
|
||||
public void setAssociatedMetParam(AbstractMetParameter amp) {
|
||||
if (this.associatedMetParam != null)
|
||||
this.associatedMetParam = null;
|
||||
|
||||
this.associatedMetParam = amp;
|
||||
}
|
||||
|
||||
public AbstractMetParameter getAssociatedMetParam() {
|
||||
return this.associatedMetParam;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return the dataTime
|
||||
*/
|
||||
|
@ -104,7 +125,8 @@ public abstract class AbstractMetParameter extends Amount implements Quantity, I
|
|||
}
|
||||
|
||||
/**
|
||||
* @param dataTime the dataTime to set
|
||||
* @param dataTime
|
||||
* the dataTime to set
|
||||
*/
|
||||
public final void setDataTime(DataTime dataTime) {
|
||||
this.dataTime = dataTime;
|
||||
|
@ -118,21 +140,24 @@ public abstract class AbstractMetParameter extends Amount implements Quantity, I
|
|||
}
|
||||
|
||||
/**
|
||||
* @param valueString the valueString to set
|
||||
* @param valueString
|
||||
* the valueString to set
|
||||
*/
|
||||
public final void setValueString(String valueString) {
|
||||
this.valueString = valueString;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param useStringValue the useStringValue to set
|
||||
* @param useStringValue
|
||||
* the useStringValue to set
|
||||
*/
|
||||
public final void setUseStringValue(boolean useStringValue) {
|
||||
this.useStringValue = useStringValue;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param standardUnit the standardUnit to set
|
||||
* @param standardUnit
|
||||
* the standardUnit to set
|
||||
*/
|
||||
// public final void setStandardUnit(Unit<?> standardUnit) {
|
||||
// this.standardUnit = standardUnit;
|
||||
|
@ -147,7 +172,6 @@ public abstract class AbstractMetParameter extends Amount implements Quantity, I
|
|||
@DynamicSerializeElement
|
||||
protected ArrayList<String> preferedDeriveParameters;
|
||||
|
||||
|
||||
/**
|
||||
* @return the useStringValue
|
||||
*/
|
||||
|
@ -231,8 +255,7 @@ public abstract class AbstractMetParameter extends Amount implements Quantity, I
|
|||
|
||||
if (dataTime.getUtilityFlags().contains(FLAG.PERIOD_USED)) {
|
||||
return dataTime.getValidPeriod().contains(dt.getValidTime().getTime());
|
||||
}
|
||||
else {
|
||||
} else {
|
||||
return dataTime.compareTo(dt) == 0;
|
||||
}
|
||||
}
|
||||
|
@ -245,8 +268,7 @@ public abstract class AbstractMetParameter extends Amount implements Quantity, I
|
|||
public boolean hasValidValue() {
|
||||
if (useStringValue) {
|
||||
return (valueString == null ? false : true);
|
||||
}
|
||||
else {
|
||||
} else {
|
||||
return super.hasValidValue();
|
||||
}
|
||||
}
|
||||
|
@ -256,17 +278,14 @@ public abstract class AbstractMetParameter extends Amount implements Quantity, I
|
|||
public Number getValueAs(Unit<?> unitNeeded) {
|
||||
if (!hasValidValue()) {
|
||||
return null;
|
||||
}
|
||||
else if( !isUnitCompatible( unitNeeded ) ) {
|
||||
System.out.println("getValueAs() : asking for incompatible units. "+
|
||||
getUnit().toString() +", "+ unitNeeded.toString() );
|
||||
} else if (!isUnitCompatible(unitNeeded)) {
|
||||
System.out.println("getValueAs() : asking for incompatible units. " + getUnit().toString() + ", " + unitNeeded.toString());
|
||||
return null;
|
||||
}
|
||||
|
||||
if (useStringValue) {
|
||||
return getMissingValueSentinel();
|
||||
}
|
||||
else {
|
||||
} else {
|
||||
return super.getValueAs(unitNeeded);
|
||||
}
|
||||
}
|
||||
|
@ -278,27 +297,22 @@ public abstract class AbstractMetParameter extends Amount implements Quantity, I
|
|||
try {
|
||||
|
||||
if (!isUnitCompatible(unitName)) {
|
||||
System.out.println("getValueAs() : asking for incompatible units. "+
|
||||
getUnit().toString() +" , "+ unitName );
|
||||
System.out.println("getValueAs() : asking for incompatible units. " + getUnit().toString() + " , " + unitName);
|
||||
return null;
|
||||
}
|
||||
|
||||
if (useStringValue) {
|
||||
return getMissingValueSentinel();
|
||||
}
|
||||
else {
|
||||
} else {
|
||||
return super.getValueAs(new UnitAdapter().unmarshal(unitName));
|
||||
}
|
||||
|
||||
|
||||
} catch (Exception e) {
|
||||
// TODO Auto-generated catch block
|
||||
e.printStackTrace();
|
||||
}
|
||||
return null;
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
// this will work off of the current units so if we need to
|
||||
|
@ -315,15 +329,13 @@ public abstract class AbstractMetParameter extends Amount implements Quantity, I
|
|||
|
||||
if (hasStringValue()) {
|
||||
formattedValueStr = valueString;
|
||||
}
|
||||
else {
|
||||
} else {
|
||||
formattedValueStr = getValue().toString();
|
||||
}
|
||||
|
||||
if (formatStr == null) {
|
||||
return formattedValueStr;
|
||||
}
|
||||
else if( formatStr.startsWith("%") ) {
|
||||
} else if (formatStr.startsWith("%")) {
|
||||
// double formattedValue = valueAs.doubleValue();
|
||||
StringBuilder sb = new StringBuilder();
|
||||
Formatter fmtr = new Formatter(sb);
|
||||
|
@ -334,10 +346,8 @@ public abstract class AbstractMetParameter extends Amount implements Quantity, I
|
|||
// sValue = sValue.substring( trim );
|
||||
|
||||
return formattedValueStr;
|
||||
}
|
||||
else {
|
||||
System.out.println("Sanity Check: Unrecognized format string ("+ formatStr +
|
||||
") for metParameter "+ getMetParamName() );
|
||||
} else {
|
||||
System.out.println("Sanity Check: Unrecognized format string (" + formatStr + ") for metParameter " + getMetParamName());
|
||||
return formattedValueStr;
|
||||
}
|
||||
}
|
||||
|
@ -359,13 +369,11 @@ public abstract class AbstractMetParameter extends Amount implements Quantity, I
|
|||
public void setValueFromString(String valStr, Unit<?> u) {
|
||||
if (hasStringValue()) {
|
||||
setStringValue(valStr);
|
||||
}
|
||||
else {
|
||||
} else {
|
||||
NumberFormat numFmt = NumberFormat.getInstance();
|
||||
try {
|
||||
setValue(numFmt.parse(valStr), u);
|
||||
}
|
||||
catch ( ParseException pe ) {
|
||||
} catch (ParseException pe) {
|
||||
super.setValueToMissing();
|
||||
}
|
||||
}
|
||||
|
@ -380,8 +388,7 @@ public abstract class AbstractMetParameter extends Amount implements Quantity, I
|
|||
super.setValueToMissing();
|
||||
}
|
||||
|
||||
public Boolean derivable( ArrayList<String> checkedParams,
|
||||
Collection<AbstractMetParameter> inputParams ) {
|
||||
public Boolean derivable(ArrayList<String> checkedParams, Collection<AbstractMetParameter> inputParams) {
|
||||
|
||||
return (getDeriveMethod(checkedParams, inputParams) != null);
|
||||
}
|
||||
|
@ -393,15 +400,16 @@ public abstract class AbstractMetParameter extends Amount implements Quantity, I
|
|||
// if the preferredDeriveParameters list is set then only use these
|
||||
// parameters.
|
||||
if (preferedDeriveParameters != null) {
|
||||
|
||||
ArrayList<AbstractMetParameter> inputParamsList = new ArrayList<AbstractMetParameter>();
|
||||
|
||||
for (AbstractMetParameter prm : inputParams) {
|
||||
if (preferedDeriveParameters.contains(prm.getMetParamName())) {
|
||||
inputParamsList.add(prm);
|
||||
}
|
||||
}
|
||||
return getDeriveMethod(checkedParams, inputParamsList);
|
||||
}
|
||||
else {
|
||||
} else {
|
||||
return getDeriveMethod(checkedParams, inputParams);
|
||||
}
|
||||
}
|
||||
|
@ -409,8 +417,7 @@ public abstract class AbstractMetParameter extends Amount implements Quantity, I
|
|||
// check each of the methods named 'derive' and check to see if the
|
||||
// given inputParams are sufficient to derive this ncParameter.
|
||||
//
|
||||
public Method getDeriveMethod( ArrayList<String> checkedParams,
|
||||
Collection<AbstractMetParameter> inputParams ) {
|
||||
public Method getDeriveMethod(ArrayList<String> checkedParams, Collection<AbstractMetParameter> inputParams) {
|
||||
|
||||
Method[] deriveMthds = this.getClass().getDeclaredMethods();
|
||||
ArrayList<Method> foundDeriveMthds = new ArrayList<Method>();
|
||||
|
@ -446,13 +453,11 @@ public abstract class AbstractMetParameter extends Amount implements Quantity, I
|
|||
// if not in the list and if we have already checked this parameter
|
||||
// then see if it is derivable
|
||||
//
|
||||
if( !prmFound &&
|
||||
!checkedParams.contains( this.getMetParamName() ) ) {
|
||||
if (!prmFound && !checkedParams.contains(this.getMetParamName())) {
|
||||
|
||||
AbstractMetParameter argParam;
|
||||
try {
|
||||
argParam = (AbstractMetParameter)
|
||||
argClass.getConstructor( ).newInstance();
|
||||
argParam = (AbstractMetParameter) argClass.getConstructor().newInstance();
|
||||
|
||||
String metPrmName = argParam.getMetParamName();
|
||||
checkedParams.add(metPrmName);
|
||||
|
@ -487,22 +492,17 @@ public abstract class AbstractMetParameter extends Amount implements Quantity, I
|
|||
//
|
||||
if (foundDeriveMthds.isEmpty()) {
|
||||
return null;
|
||||
}
|
||||
else if( foundDeriveMthds.size() > 1 ) {
|
||||
} else if (foundDeriveMthds.size() > 1) {
|
||||
// If this happens then the caller should set the preferredDeriveParameters
|
||||
// list to tell this method which arguements to use.
|
||||
System.out.println("Sanity Check: metParameter "+
|
||||
getMetParamName() + " has multiple derive() methods for " +
|
||||
"the given input parameters.");
|
||||
System.out.println("Sanity Check: metParameter " + getMetParamName() + " has multiple derive() methods for " + "the given input parameters.");
|
||||
return null;
|
||||
}
|
||||
else {
|
||||
} else {
|
||||
return foundDeriveMthds.get(0);
|
||||
}
|
||||
}
|
||||
|
||||
public AbstractMetParameter derive( Collection<AbstractMetParameter> inputParams )
|
||||
throws NotDerivableException {
|
||||
public AbstractMetParameter derive(Collection<AbstractMetParameter> inputParams) throws NotDerivableException {
|
||||
|
||||
Method deriveMthd = getDeriveMethod(inputParams);
|
||||
|
||||
|
@ -532,8 +532,7 @@ public abstract class AbstractMetParameter extends Amount implements Quantity, I
|
|||
if (!inputPrm.hasValidValue()) {
|
||||
setValueToMissing();
|
||||
return this;
|
||||
}
|
||||
else {
|
||||
} else {
|
||||
mthdArgs.add(inputPrm);
|
||||
prmFound = true;
|
||||
break;
|
||||
|
@ -561,12 +560,10 @@ public abstract class AbstractMetParameter extends Amount implements Quantity, I
|
|||
derivedParam = deriveMthd.invoke(this, mthdArgs.get(0), mthdArgs.get(1));
|
||||
break;
|
||||
case 3:
|
||||
derivedParam = deriveMthd.invoke(this, mthdArgs.get(0), mthdArgs.get(1),
|
||||
mthdArgs.get(2) );
|
||||
derivedParam = deriveMthd.invoke(this, mthdArgs.get(0), mthdArgs.get(1), mthdArgs.get(2));
|
||||
break;
|
||||
case 4:
|
||||
derivedParam = deriveMthd.invoke(this, mthdArgs.get(0), mthdArgs.get(1),
|
||||
mthdArgs.get(2), mthdArgs.get(3) );
|
||||
derivedParam = deriveMthd.invoke(this, mthdArgs.get(0), mthdArgs.get(1), mthdArgs.get(2), mthdArgs.get(3));
|
||||
break;
|
||||
}
|
||||
|
||||
|
@ -625,8 +622,7 @@ public abstract class AbstractMetParameter extends Amount implements Quantity, I
|
|||
//String
|
||||
if (hasStringValue()) {
|
||||
return getClass().getSimpleName() + " " + getStringValue();
|
||||
}
|
||||
else {
|
||||
} else {
|
||||
return getClass().getSimpleName() + " " + getValue().toString() + " " + getUnit().toString();
|
||||
}
|
||||
}
|
||||
|
@ -678,5 +674,4 @@ public abstract class AbstractMetParameter extends Amount implements Quantity, I
|
|||
// return metParam;
|
||||
// }
|
||||
|
||||
|
||||
}
|
||||
|
|
|
@ -1,28 +1,27 @@
|
|||
package gov.noaa.nws.ncep.edex.common.metparameters;
|
||||
|
||||
import gov.noaa.nws.ncep.edex.common.metparameters.MetParameterFactory.DeriveMethod;
|
||||
import gov.noaa.nws.ncep.edex.common.metparameters.parameterconversion.PRLibrary;
|
||||
import gov.noaa.nws.ncep.edex.common.metparameters.parameterconversion.PRLibrary.InvalidValueException;
|
||||
|
||||
import javax.xml.bind.annotation.XmlAccessType;
|
||||
import javax.xml.bind.annotation.XmlAccessorType;
|
||||
import javax.xml.bind.annotation.XmlRootElement;
|
||||
|
||||
import com.raytheon.uf.common.serialization.ISerializableObject;
|
||||
import com.raytheon.uf.common.serialization.adapters.UnitAdapter;
|
||||
import com.raytheon.uf.common.serialization.annotations.DynamicSerialize;
|
||||
import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement;
|
||||
|
||||
import gov.noaa.nws.ncep.edex.common.metparameters.MetParameterFactory.DeriveMethod;
|
||||
import gov.noaa.nws.ncep.edex.common.metparameters.parameterconversion.PRLibrary;
|
||||
//import gov.noaa.nws.ncep.edex.common.metparameters.parameterconversion.PRLibrary.InvalidRangeException;
|
||||
import gov.noaa.nws.ncep.edex.common.metparameters.parameterconversion.PRLibrary.InvalidValueException;
|
||||
/**
|
||||
* Maps to any of the GEMPAK parameters DWPC/ DWPK/DWPF
|
||||
* depending on the unit used to measure the dewpoint.
|
||||
* Maps to any of the GEMPAK parameters DWPC/ DWPK/DWPF depending on the unit
|
||||
* used to measure the dewpoint.
|
||||
*/
|
||||
|
||||
@XmlRootElement
|
||||
@XmlAccessorType(XmlAccessType.NONE)
|
||||
@DynamicSerialize
|
||||
public class DewPointTemp extends AbstractMetParameter implements
|
||||
javax.measure.quantity.Temperature, ISerializableObject {
|
||||
public class DewPointTemp extends AbstractMetParameter implements javax.measure.quantity.Temperature, ISerializableObject {
|
||||
|
||||
/**
|
||||
*
|
||||
|
@ -36,6 +35,7 @@ public class DewPointTemp extends AbstractMetParameter implements
|
|||
|
||||
@DeriveMethod
|
||||
public DewPointTemp derive(MixingRatio m, PressureLevel p) throws InvalidValueException, NullPointerException {
|
||||
|
||||
if (m.hasValidValue() && p.hasValidValue()) {
|
||||
Amount theDewpointTemperatureAmount = PRLibrary.prDwpt(m, p);
|
||||
this.setValue(theDewpointTemperatureAmount);
|
||||
|
@ -46,6 +46,7 @@ public class DewPointTemp extends AbstractMetParameter implements
|
|||
|
||||
@DeriveMethod
|
||||
public DewPointTemp derive(SurfaceMixingRatio m, SurfacePressure p) throws InvalidValueException, NullPointerException {
|
||||
|
||||
if (m.hasValidValue() && p.hasValidValue()) {
|
||||
Amount theDewpointTemperatureAmount = PRLibrary.prDwpt(m, p);
|
||||
this.setValue(theDewpointTemperatureAmount);
|
||||
|
@ -56,6 +57,7 @@ public class DewPointTemp extends AbstractMetParameter implements
|
|||
|
||||
@DeriveMethod
|
||||
public DewPointTemp derive(AirTemperature t, DewPointDepression dp) throws InvalidValueException, NullPointerException {
|
||||
|
||||
if (t.hasValidValue() && dp.hasValidValue()) {
|
||||
Amount theDewpointTemperatureAmount = PRLibrary.prDwdp(t, dp);
|
||||
this.setValue(theDewpointTemperatureAmount);
|
||||
|
@ -74,21 +76,5 @@ public class DewPointTemp extends AbstractMetParameter implements
|
|||
setValueToMissing();
|
||||
return this;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -5,16 +5,17 @@ import java.lang.annotation.RetentionPolicy;
|
|||
import java.text.ParseException;
|
||||
import java.text.ParsePosition;
|
||||
import java.util.HashMap;
|
||||
|
||||
import javax.measure.unit.Unit;
|
||||
import javax.measure.unit.UnitFormat;
|
||||
import javax.xml.bind.annotation.XmlAccessType;
|
||||
import javax.xml.bind.annotation.XmlAccessorType;
|
||||
import javax.xml.bind.annotation.XmlRootElement;
|
||||
|
||||
import com.raytheon.uf.common.time.DataTime;
|
||||
import com.raytheon.uf.common.serialization.ISerializableObject;
|
||||
import com.raytheon.uf.common.serialization.annotations.DynamicSerialize;
|
||||
import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement;
|
||||
import com.raytheon.uf.common.time.DataTime;
|
||||
|
||||
//import com.raytheon.uf.viz.core.exception.VizException;
|
||||
|
||||
|
@ -42,8 +43,7 @@ public class MetParameterFactory implements ISerializableObject{
|
|||
|
||||
//
|
||||
@DynamicSerializeElement
|
||||
private HashMap<String, AbstractMetParameter> ncParamsMap =
|
||||
new HashMap<String, AbstractMetParameter>();
|
||||
private HashMap<String, AbstractMetParameter> ncParamsMap = new HashMap<String, AbstractMetParameter>();
|
||||
|
||||
@DynamicSerializeElement
|
||||
private static MetParameterFactory instance = null;
|
||||
|
@ -218,6 +218,11 @@ public class MetParameterFactory implements ISerializableObject{
|
|||
ncParamsMap.put(PresentWeather.class.getSimpleName(), new PresentWeather());
|
||||
ncParamsMap.put(PressureLevel.class.getSimpleName(), new PressureLevel());
|
||||
ncParamsMap.put(PressChange3Hr.class.getSimpleName(), new PressChange3Hr());
|
||||
|
||||
// TTR 923
|
||||
ncParamsMap.put(PressChange3HrAbsVal.class.getSimpleName(), new PressChange3HrAbsVal());
|
||||
ncParamsMap.put(PressureChange3HrAndTendency.class.getSimpleName(), new PressureChange3HrAndTendency());
|
||||
|
||||
ncParamsMap.put(PressChange24Hr.class.getSimpleName(), new PressChange24Hr());
|
||||
ncParamsMap.put(PressureTendencySymbol.class.getSimpleName(), new PressureTendencySymbol());
|
||||
ncParamsMap.put(POPFcst06Hrs.class.getSimpleName(), new POPFcst06Hrs());
|
||||
|
@ -316,8 +321,7 @@ public class MetParameterFactory implements ISerializableObject{
|
|||
ncParamsMap.put(VirtualTemp.class.getSimpleName(), new VirtualTemp());
|
||||
ncParamsMap.put(Visibility.class.getSimpleName(), new Visibility());
|
||||
ncParamsMap.put(WindDirectionVComp.class.getSimpleName(), new WindDirectionVComp());
|
||||
ncParamsMap.put( WaterEquivOfNewSnow.class.getSimpleName(), new
|
||||
WaterEquivOfNewSnow() );
|
||||
ncParamsMap.put(WaterEquivOfNewSnow.class.getSimpleName(), new WaterEquivOfNewSnow());
|
||||
ncParamsMap.put(WaveSteepness.class.getSimpleName(), new WaveSteepness());
|
||||
ncParamsMap.put(WetBulbPotentialTemp.class.getSimpleName(), new WetBulbPotentialTemp());
|
||||
ncParamsMap.put(WetBulbTemp.class.getSimpleName(), new WetBulbTemp());
|
||||
|
@ -338,8 +342,7 @@ public class MetParameterFactory implements ISerializableObject{
|
|||
ncParamsMap.put(ProbablePresentWeather.class.getSimpleName(), new ProbablePresentWeather());
|
||||
ncParamsMap.put(LowLevelWindShear.class.getSimpleName(), new LowLevelWindShear());
|
||||
ncParamsMap.put(WxPresent.class.getSimpleName(), new WxPresent());
|
||||
}
|
||||
catch(Exception e ){
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
|
@ -351,15 +354,14 @@ public class MetParameterFactory implements ISerializableObject{
|
|||
// get the default units
|
||||
public AbstractMetParameter createParameter(String prmName) {
|
||||
String ncParamName;
|
||||
|
||||
if (ncParamsAliasMap.containsKey(prmName)) {
|
||||
ncParamName = ncParamsAliasMap.get(prmName);
|
||||
}
|
||||
else {
|
||||
} else {
|
||||
ncParamName = prmName;
|
||||
}
|
||||
|
||||
if( ncParamName == null ||
|
||||
!ncParamsMap.containsKey( ncParamName )) {
|
||||
if (ncParamName == null || !ncParamsMap.containsKey(ncParamName)) {
|
||||
System.out.println("can't find ncParam for : " + prmName);
|
||||
return null;
|
||||
}
|
||||
|
@ -367,12 +369,10 @@ public class MetParameterFactory implements ISerializableObject{
|
|||
AbstractMetParameter ncParam = ncParamsMap.get(ncParamName);
|
||||
|
||||
try {
|
||||
AbstractMetParameter newParam = (AbstractMetParameter)
|
||||
ncParam.getClass().getConstructor().newInstance();
|
||||
AbstractMetParameter newParam = (AbstractMetParameter) ncParam.getClass().getConstructor().newInstance();
|
||||
return newParam;
|
||||
} catch (Exception e) {
|
||||
System.out.println("error getting newInstance for metParam " +
|
||||
ncParam.getClass().getSimpleName() );
|
||||
System.out.println("error getting newInstance for metParam " + ncParam.getClass().getSimpleName());
|
||||
}
|
||||
|
||||
return null;
|
||||
|
@ -385,11 +385,9 @@ public class MetParameterFactory implements ISerializableObject{
|
|||
|
||||
if (unitName == null) {
|
||||
units = Unit.ONE;
|
||||
}
|
||||
else {
|
||||
} else {
|
||||
try {
|
||||
units = UnitFormat.getUCUMInstance().parseProductUnit(
|
||||
unitName, new ParsePosition(0) );
|
||||
units = UnitFormat.getUCUMInstance().parseProductUnit(unitName, new ParsePosition(0));
|
||||
} catch (ParseException e) {
|
||||
System.out.println("unable to determine units for " + unitName);
|
||||
return null;
|
||||
|
@ -423,10 +421,8 @@ public class MetParameterFactory implements ISerializableObject{
|
|||
|
||||
public boolean alias(String prmName, String alias) {
|
||||
|
||||
if( ncParamsAliasMap.containsKey( alias ) &&
|
||||
!ncParamsAliasMap.get( alias ).equals( prmName ) ) {
|
||||
System.out.println("Error aliasing ncParam "+prmName+" : "+alias +
|
||||
" is already aliased to "+ncParamsAliasMap.get( alias ) );
|
||||
if (ncParamsAliasMap.containsKey(alias) && !ncParamsAliasMap.get(alias).equals(prmName)) {
|
||||
System.out.println("Error aliasing ncParam " + prmName + " : " + alias + " is already aliased to " + ncParamsAliasMap.get(alias));
|
||||
// return false;
|
||||
}
|
||||
|
||||
|
@ -446,7 +442,8 @@ public class MetParameterFactory implements ISerializableObject{
|
|||
}
|
||||
}
|
||||
|
||||
public @Retention(RetentionPolicy.RUNTIME) @interface DeriveMethod {
|
||||
public @Retention(RetentionPolicy.RUNTIME)
|
||||
@interface DeriveMethod {
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -1,5 +1,10 @@
|
|||
package gov.noaa.nws.ncep.edex.common.metparameters;
|
||||
|
||||
import gov.noaa.nws.ncep.edex.common.metparameters.MetParameterFactory.DeriveMethod;
|
||||
import gov.noaa.nws.ncep.edex.common.metparameters.parameterconversion.PRLibrary;
|
||||
import gov.noaa.nws.ncep.edex.common.metparameters.parameterconversion.PRLibrary.InvalidValueException;
|
||||
|
||||
import javax.measure.unit.Unit;
|
||||
import javax.xml.bind.annotation.XmlAccessType;
|
||||
import javax.xml.bind.annotation.XmlAccessorType;
|
||||
import javax.xml.bind.annotation.XmlRootElement;
|
||||
|
@ -8,16 +13,26 @@ import com.raytheon.uf.common.serialization.ISerializableObject;
|
|||
import com.raytheon.uf.common.serialization.annotations.DynamicSerialize;
|
||||
|
||||
/**
|
||||
* Maps to the GEMPAK parameter P03C
|
||||
* Maps to "pressChange3Hour" field of the HDF5 table/decoder
|
||||
*
|
||||
* <pre>
|
||||
*
|
||||
* SOFTWARE HISTORY
|
||||
*
|
||||
* Date Ticket# Engineer Description
|
||||
* ------------ ---------- ----------- --------------------------
|
||||
* 06/17/2014 TTR 923 S. Russell TTR 923: added derive() to get PTSY needed to get the sign
|
||||
*
|
||||
* </pre>
|
||||
*
|
||||
* @author unknown
|
||||
* @version 2.0
|
||||
*/
|
||||
|
||||
@XmlRootElement
|
||||
@XmlAccessorType(XmlAccessType.NONE)
|
||||
@DynamicSerialize
|
||||
|
||||
|
||||
|
||||
public class PressChange3Hr extends AbstractMetParameter implements
|
||||
javax.measure.quantity.Pressure, ISerializableObject {
|
||||
public class PressChange3Hr extends AbstractMetParameter implements javax.measure.quantity.Pressure, ISerializableObject {
|
||||
/**
|
||||
*
|
||||
*/
|
||||
|
@ -27,8 +42,35 @@ import com.raytheon.uf.common.serialization.annotations.DynamicSerialize;
|
|||
super(UNIT);
|
||||
}
|
||||
|
||||
/* Derive the pressure value using P03C along with PTSY to calculate the
|
||||
* positive or negative sign. */
|
||||
@DeriveMethod
|
||||
public PressChange3Hr derive(PressChange3HrAbsVal p, PressureTendencySymbol ptsy) throws InvalidValueException, NullPointerException {
|
||||
|
||||
if (p.hasValidValue() && ptsy.hasValidValue()) {
|
||||
Number n = (Number) new Integer(ptsy.getStringValue());
|
||||
Amount ptsyAmount = new Amount(n, Unit.ONE);
|
||||
Amount theP03CAmount = PRLibrary.prP03CAbsVal(p, ptsyAmount);
|
||||
this.setAssociatedMetParam(copyDerivedPTSY(ptsy));
|
||||
this.setValue(theP03CAmount);
|
||||
} else {
|
||||
this.setValueToMissing();
|
||||
}
|
||||
|
||||
return this;
|
||||
}
|
||||
|
||||
private PressureTendencySymbol copyDerivedPTSY(PressureTendencySymbol ptsy) {
|
||||
|
||||
PressureTendencySymbol cptsy = new PressureTendencySymbol();
|
||||
|
||||
cptsy.setDataTime(ptsy.getDataTime());
|
||||
cptsy.setStringValue(ptsy.getStringValue());
|
||||
cptsy.setUnit(ptsy.getUnit());
|
||||
cptsy.setValidTime(ptsy.getValidTime());
|
||||
|
||||
return cptsy;
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -0,0 +1,28 @@
|
|||
package gov.noaa.nws.ncep.edex.common.metparameters;
|
||||
|
||||
import javax.xml.bind.annotation.XmlAccessType;
|
||||
import javax.xml.bind.annotation.XmlAccessorType;
|
||||
import javax.xml.bind.annotation.XmlRootElement;
|
||||
|
||||
import com.raytheon.uf.common.serialization.ISerializableObject;
|
||||
import com.raytheon.uf.common.serialization.annotations.DynamicSerialize;
|
||||
|
||||
/**
|
||||
* Maps to "pressChange3Hour" field of the HDF5 table/decoder, This used to be
|
||||
* the original PressChange3Hr.java/P03C, which was unsigned, but all values
|
||||
* would become positive. See TTR 923
|
||||
*/
|
||||
@XmlRootElement
|
||||
@XmlAccessorType(XmlAccessType.NONE)
|
||||
@DynamicSerialize
|
||||
public class PressChange3HrAbsVal extends AbstractMetParameter implements javax.measure.quantity.Pressure, ISerializableObject {
|
||||
/**
|
||||
*
|
||||
*/
|
||||
private static final long serialVersionUID = 4636092028758506639L;
|
||||
|
||||
public PressChange3HrAbsVal() {
|
||||
super(UNIT);
|
||||
}
|
||||
|
||||
}
|
|
@ -0,0 +1,64 @@
|
|||
package gov.noaa.nws.ncep.edex.common.metparameters;
|
||||
|
||||
import gov.noaa.nws.ncep.edex.common.metparameters.MetParameterFactory.DeriveMethod;
|
||||
import gov.noaa.nws.ncep.edex.common.metparameters.parameterconversion.PRLibrary;
|
||||
import gov.noaa.nws.ncep.edex.common.metparameters.parameterconversion.PRLibrary.InvalidValueException;
|
||||
|
||||
import javax.measure.quantity.Dimensionless;
|
||||
import javax.measure.unit.Unit;
|
||||
import javax.xml.bind.annotation.XmlAccessType;
|
||||
import javax.xml.bind.annotation.XmlAccessorType;
|
||||
import javax.xml.bind.annotation.XmlRootElement;
|
||||
|
||||
import com.raytheon.uf.common.serialization.ISerializableObject;
|
||||
import com.raytheon.uf.common.serialization.annotations.DynamicSerialize;
|
||||
import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement;
|
||||
|
||||
/*
|
||||
* Used for the PTND button, which combines P03C + PTSY
|
||||
* PressureChange3Hr + PressureTendencySymbol
|
||||
*/
|
||||
@XmlRootElement
|
||||
@XmlAccessorType(XmlAccessType.NONE)
|
||||
@DynamicSerialize
|
||||
public class PressureChange3HrAndTendency extends AbstractMetParameter implements Dimensionless, ISerializableObject {
|
||||
|
||||
@DynamicSerializeElement
|
||||
private static final long serialVersionUID = -6602297437762954327L;
|
||||
|
||||
public PressureChange3HrAndTendency() {
|
||||
super(UNIT);
|
||||
|
||||
}
|
||||
|
||||
@DeriveMethod
|
||||
public PressureChange3HrAndTendency derive(PressChange3HrAbsVal p, PressureTendencySymbol ptsy) throws InvalidValueException, NullPointerException {
|
||||
|
||||
if (p.hasValidValue() && ptsy.hasValidValue()) {
|
||||
Number n = (Number) new Integer(ptsy.getStringValue());
|
||||
Amount ptsyAmount = new Amount(n, Unit.ONE);
|
||||
Amount theP03CAmount = PRLibrary.prP03CAbsVal(p, ptsyAmount);
|
||||
this.setAssociatedMetParam(copyDerivedPTSY(ptsy));
|
||||
this.setValue(theP03CAmount);
|
||||
|
||||
} else {
|
||||
this.setValueToMissing();
|
||||
}
|
||||
|
||||
return this;
|
||||
}
|
||||
|
||||
private PressureTendencySymbol copyDerivedPTSY(PressureTendencySymbol ptsy) {
|
||||
|
||||
PressureTendencySymbol cptsy = new PressureTendencySymbol();
|
||||
|
||||
cptsy.setDataTime(ptsy.getDataTime());
|
||||
cptsy.setStringValue(ptsy.getStringValue());
|
||||
cptsy.setUnit(ptsy.getUnit());
|
||||
cptsy.setValidTime(ptsy.getValidTime());
|
||||
|
||||
return cptsy;
|
||||
|
||||
}
|
||||
|
||||
}// end class PressureChange3HrAndTendency
|
|
@ -3,7 +3,6 @@
|
|||
*/
|
||||
package gov.noaa.nws.ncep.edex.common.metparameters;
|
||||
|
||||
|
||||
import javax.measure.quantity.Dimensionless;
|
||||
import javax.xml.bind.annotation.XmlAccessType;
|
||||
import javax.xml.bind.annotation.XmlAccessorType;
|
||||
|
@ -12,24 +11,23 @@ import javax.xml.bind.annotation.XmlRootElement;
|
|||
import com.raytheon.uf.common.serialization.ISerializableObject;
|
||||
import com.raytheon.uf.common.serialization.annotations.DynamicSerialize;
|
||||
|
||||
|
||||
/**
|
||||
* Maps to the GEMPAK parameter PTND
|
||||
*/
|
||||
@XmlRootElement
|
||||
@XmlAccessorType(XmlAccessType.NONE)
|
||||
@DynamicSerialize
|
||||
public class PressureTendencySymbol extends AbstractMetParameter implements
|
||||
Dimensionless, ISerializableObject {
|
||||
public class PressureTendencySymbol extends AbstractMetParameter implements Dimensionless, ISerializableObject {
|
||||
|
||||
/**
|
||||
* The parameter values are indexes into the press_change_char_lookup.txt file which
|
||||
* references symbols defined in the WxSymbols.svg file.
|
||||
* The parameter values are indexes into the press_change_char_lookup.txt
|
||||
* file which references symbols defined in the WxSymbols.svg file.
|
||||
*/
|
||||
private static final long serialVersionUID = -4616340047592131749L;
|
||||
|
||||
public PressureTendencySymbol() {
|
||||
super(UNIT);
|
||||
//setValueIsString(); it has both int and string
|
||||
// TTR 922-923, This is needed to display PTSY
|
||||
setValueIsString();
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,12 +1,9 @@
|
|||
package gov.noaa.nws.ncep.edex.common.metparameters;
|
||||
|
||||
|
||||
import gov.noaa.nws.ncep.edex.common.metparameters.MetParameterFactory.DeriveMethod;
|
||||
import gov.noaa.nws.ncep.edex.common.metparameters.parameterconversion.PRLibrary;
|
||||
//import gov.noaa.nws.ncep.edex.common.metparameters.parameterconversion.PRLibrary.InvalidRangeException;
|
||||
import gov.noaa.nws.ncep.edex.common.metparameters.parameterconversion.PRLibrary.InvalidValueException;
|
||||
|
||||
|
||||
import javax.measure.quantity.Dimensionless;
|
||||
import javax.xml.bind.annotation.XmlAccessType;
|
||||
import javax.xml.bind.annotation.XmlAccessorType;
|
||||
|
@ -17,13 +14,14 @@ import com.raytheon.uf.common.serialization.adapters.UnitAdapter;
|
|||
import com.raytheon.uf.common.serialization.annotations.DynamicSerialize;
|
||||
import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement;
|
||||
|
||||
//import gov.noaa.nws.ncep.edex.common.metparameters.parameterconversion.PRLibrary.InvalidRangeException;
|
||||
|
||||
/**
|
||||
* Maps to the GEMPAK parameter RELH
|
||||
*/
|
||||
@XmlRootElement
|
||||
@XmlAccessorType(XmlAccessType.NONE)
|
||||
@DynamicSerialize
|
||||
|
||||
public class RelativeHumidity extends AbstractMetParameter implements Dimensionless, ISerializableObject {
|
||||
|
||||
/**
|
||||
|
@ -56,6 +54,7 @@ public class RelativeHumidity extends AbstractMetParameter implements Dimensionl
|
|||
|
||||
@DeriveMethod
|
||||
public RelativeHumidity derive(AirTemperature t, DewPointTemp d) throws InvalidValueException, NullPointerException {
|
||||
|
||||
if (t.hasValidValue() && d.hasValidValue()) {
|
||||
Amount theRelhAmount = PRLibrary.prRelh(t, d);
|
||||
this.setValue(theRelhAmount);
|
||||
|
@ -65,4 +64,3 @@ public class RelativeHumidity extends AbstractMetParameter implements Dimensionl
|
|||
return this;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
File diff suppressed because it is too large
Load diff
|
@ -154,6 +154,7 @@ public class NcSoundingLayer implements ISerializableObject, Cloneable {
|
|||
}
|
||||
|
||||
/**
|
||||
*
|
||||
* @param pressure
|
||||
* @param geoHeight
|
||||
* @param temperature
|
||||
|
@ -164,8 +165,7 @@ public class NcSoundingLayer implements ISerializableObject, Cloneable {
|
|||
* @param windV
|
||||
* @param omega
|
||||
* @param specHumidity
|
||||
* @param dewDepression
|
||||
* @param dataType
|
||||
* @param dpd
|
||||
*/
|
||||
public NcSoundingLayer(float pressure, float geoHeight, float temperature,
|
||||
float dewpoint, float windSpeed, float windDirection, float windU,
|
||||
|
@ -187,6 +187,25 @@ public class NcSoundingLayer implements ISerializableObject, Cloneable {
|
|||
|
||||
}
|
||||
|
||||
public NcSoundingLayer(float pressure, float geoHeight, float temperature,
|
||||
float dewpoint, float windSpeed, float windDirection, float windU,
|
||||
float windV, float omega, float specHumidity, float relativeHumidity) {
|
||||
super();
|
||||
this.pressure = pressure;
|
||||
this.geoHeight = geoHeight;
|
||||
this.temperature = temperature;
|
||||
this.dewpoint = dewpoint;
|
||||
this.windSpeed = windSpeed;
|
||||
this.windDirection = windDirection;
|
||||
this.windU = windU;
|
||||
this.windV = windV;
|
||||
this.omega = omega;
|
||||
this.specHumidity = specHumidity;
|
||||
this.relativeHumidity = relativeHumidity;
|
||||
this.dpd = MISSING;
|
||||
|
||||
}
|
||||
|
||||
/*
|
||||
* public String getDataType() { return dataType; }
|
||||
*
|
||||
|
@ -246,6 +265,24 @@ public class NcSoundingLayer implements ISerializableObject, Cloneable {
|
|||
this.temperature = temperature;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return the dpd
|
||||
*/
|
||||
public float getDpd() {
|
||||
return dpd;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param dpd
|
||||
* the dpd to set
|
||||
*/
|
||||
public void setDpd(float dpd) {
|
||||
if (dpd == LEGACY_MISSING)
|
||||
this.dpd = MISSING;
|
||||
else
|
||||
this.dpd = dpd;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return the dewpoint in Celsius
|
||||
*/
|
||||
|
@ -368,14 +405,6 @@ public class NcSoundingLayer implements ISerializableObject, Cloneable {
|
|||
this.relativeHumidity = relativeHumidity;
|
||||
}
|
||||
|
||||
public float getDpd() {
|
||||
return dpd;
|
||||
}
|
||||
|
||||
public void setDpd(float dpd) {
|
||||
this.dpd = dpd;
|
||||
}
|
||||
|
||||
private void computeUV() {
|
||||
if (windSpeed > MISSING && windDirection > MISSING) {
|
||||
Coordinate uv = uvComp(windSpeed, windDirection);
|
||||
|
@ -460,6 +489,7 @@ public class NcSoundingLayer implements ISerializableObject, Cloneable {
|
|||
|
||||
@Override
|
||||
public String toString() {
|
||||
|
||||
return "Pressure=" + getPressure() + "mb:Z=" + getGeoHeight() + "m:T="
|
||||
+ getTemperature() + "\u00B0C:Td=" + getDewpoint()
|
||||
+ "\u00B0C:WS=" + getWindSpeed() + "m/s:WD="
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
package gov.noaa.nws.ncep.edex.common.sounding;
|
||||
|
||||
/**
|
||||
*
|
||||
* gov.noaa.nws.ncep.edex.common.sounding.NcSoundingProfile
|
||||
|
@ -18,13 +19,13 @@ package gov.noaa.nws.ncep.edex.common.sounding;
|
|||
* 09/14/2011 457 S. Gurung Renamed ObsSndType.H5UAIR to ObsSndType.NCUAIR
|
||||
*10/06/2011 465 Archana Added a list of NcSoundingLayer2 objects to the sounding profile
|
||||
* 02/15/2012 Chin Chen added fcsTime to support pfc sounding query
|
||||
* 07/23/2014 Chin Chen Support PW
|
||||
* </pre>
|
||||
*
|
||||
* @author Chin Chen
|
||||
* @version 1.0
|
||||
*/
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
|
@ -35,6 +36,7 @@ import javax.xml.bind.annotation.XmlRootElement;
|
|||
import com.raytheon.uf.common.serialization.ISerializableObject;
|
||||
import com.raytheon.uf.common.serialization.annotations.DynamicSerialize;
|
||||
import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement;
|
||||
|
||||
@XmlRootElement
|
||||
@XmlAccessorType(XmlAccessType.NONE)
|
||||
@DynamicSerialize
|
||||
|
@ -46,24 +48,32 @@ public class NcSoundingProfile implements ISerializableObject{
|
|||
|
||||
@DynamicSerializeElement
|
||||
public static final float MISSING = -9999.f;
|
||||
|
||||
public static enum PfcSndType {
|
||||
NAMSND, GFSSND, RUC2SND, RUCPTYPSND, BROWSE, NONE
|
||||
};
|
||||
|
||||
public static enum MdlSndType {
|
||||
ANY, NONE
|
||||
};
|
||||
|
||||
public static enum ObsSndType {
|
||||
NCUAIR, UAIR, DROP, TAMDAR, BUFRUA //same as uair but using bufrua decoder and data is saved in HDF5
|
||||
NCUAIR, UAIR, DROP, TAMDAR, BUFRUA // same as uair but using bufrua
|
||||
// decoder and data is saved in HDF5
|
||||
, BROWSE, NONE
|
||||
};
|
||||
|
||||
// Important Note:
|
||||
//Chin: definition is based on UAIR record. stnid is string of character, stnnum is string of number
|
||||
//BUFRUA has different definition. stnid is string of number which is stnnum in UAIR,
|
||||
// Chin: definition is based on UAIR record. stnid is string of character,
|
||||
// stnnum is string of number
|
||||
// BUFRUA has different definition. stnid is string of number which is
|
||||
// stnnum in UAIR,
|
||||
// and stnname is string of character which is stnid in UAIR..
|
||||
// type conversion is done at BUFRUA code.
|
||||
public static enum SndQueryKeyType {
|
||||
LATLON, STNID, STNNUM, NONE
|
||||
};
|
||||
|
||||
@DynamicSerializeElement
|
||||
private List<NcSoundingLayer> soundingLyLst;
|
||||
|
||||
|
@ -72,12 +82,15 @@ public class NcSoundingProfile implements ISerializableObject{
|
|||
|
||||
@DynamicSerializeElement
|
||||
private float stationElevation;
|
||||
|
||||
// @DynamicSerializeElement
|
||||
// private String stationId;
|
||||
@DynamicSerializeElement
|
||||
private double stationLatitude;
|
||||
|
||||
@DynamicSerializeElement
|
||||
private double stationLongitude;
|
||||
|
||||
@DynamicSerializeElement
|
||||
private float sfcPress;
|
||||
|
||||
|
@ -93,6 +106,9 @@ public class NcSoundingProfile implements ISerializableObject{
|
|||
@DynamicSerializeElement
|
||||
private NcSoundingCube.QueryStatus rtnStatus = NcSoundingCube.QueryStatus.OK;
|
||||
|
||||
// Support PW
|
||||
@DynamicSerializeElement
|
||||
private float pw = -1;
|
||||
|
||||
public NcSoundingCube.QueryStatus getRtnStatus() {
|
||||
return rtnStatus;
|
||||
|
@ -118,7 +134,6 @@ public class NcSoundingProfile implements ISerializableObject{
|
|||
this.stationNum = stnNum;
|
||||
}
|
||||
|
||||
|
||||
public long getFcsTime() {
|
||||
return fcsTime;
|
||||
}
|
||||
|
@ -143,7 +158,8 @@ public class NcSoundingProfile implements ISerializableObject{
|
|||
}
|
||||
|
||||
/**
|
||||
* @param soundingLyLst2 the soundingLyLst2 to set
|
||||
* @param soundingLyLst2
|
||||
* the soundingLyLst2 to set
|
||||
*/
|
||||
public void setSoundingLyLst2(List<NcSoundingLayer2> soundingLyLst2) {
|
||||
this.soundingLyLst2 = soundingLyLst2;
|
||||
|
@ -157,7 +173,6 @@ public class NcSoundingProfile implements ISerializableObject{
|
|||
this.stationElevation = stationElevation;
|
||||
}
|
||||
|
||||
|
||||
public double getStationLatitude() {
|
||||
return stationLatitude;
|
||||
}
|
||||
|
@ -188,9 +203,9 @@ public class NcSoundingProfile implements ISerializableObject{
|
|||
|
||||
// TO-DO: Add station number (stationNumber)
|
||||
public NcSoundingProfile(List<NcSoundingLayer2> soundingLyLst2,
|
||||
List<NcSoundingLayer> soundingLyLst,
|
||||
float stationElevation, String stationId, float stationLatitude,
|
||||
float stationLongitude, float sfcPress, int stnNum) {
|
||||
List<NcSoundingLayer> soundingLyLst, float stationElevation,
|
||||
String stationId, float stationLatitude, float stationLongitude,
|
||||
float sfcPress, int stnNum) {
|
||||
super();
|
||||
this.soundingLyLst2 = soundingLyLst2;
|
||||
this.soundingLyLst = soundingLyLst;
|
||||
|
@ -214,41 +229,33 @@ public class NcSoundingProfile implements ISerializableObject{
|
|||
this.stationNum = 0;
|
||||
}
|
||||
|
||||
public float getPw() {
|
||||
return pw;
|
||||
}
|
||||
|
||||
public void setPw(float pw) {
|
||||
this.pw = pw;
|
||||
}
|
||||
|
||||
/*
|
||||
@Override
|
||||
protected AbstractStorageRecord cloneInternal() {
|
||||
// TODO Auto-generated method stub
|
||||
System.out.println("NcSoundingProfile cloneInternal()");
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Object getDataObject() {
|
||||
// TODO Auto-generated method stub
|
||||
System.out.println("NcSoundingProfile getDataObject()");
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getSizeInBytes() {
|
||||
// TODO Auto-generated method stub
|
||||
System.out.println("NcSoundingProfile getSizeInBytes()");
|
||||
return 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void reduce(int[] indices) {
|
||||
// TODO Auto-generated method stub
|
||||
System.out.println("NcSoundingProfile ()");
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean validateDataSet() {
|
||||
// TODO Auto-generated method stub
|
||||
System.out.println("NcSoundingProfile validateDataSet()");
|
||||
return false;
|
||||
}
|
||||
* @Override protected AbstractStorageRecord cloneInternal() { // TODO
|
||||
* Auto-generated method stub
|
||||
* System.out.println("NcSoundingProfile cloneInternal()"); return null; }
|
||||
*
|
||||
* @Override public Object getDataObject() { // TODO Auto-generated method
|
||||
* stub System.out.println("NcSoundingProfile getDataObject()"); return
|
||||
* null; }
|
||||
*
|
||||
* @Override public int getSizeInBytes() { // TODO Auto-generated method
|
||||
* stub System.out.println("NcSoundingProfile getSizeInBytes()"); return 0;
|
||||
* }
|
||||
*
|
||||
* @Override public void reduce(int[] indices) { // TODO Auto-generated
|
||||
* method stub System.out.println("NcSoundingProfile ()"); }
|
||||
*
|
||||
* @Override public boolean validateDataSet() { // TODO Auto-generated
|
||||
* method stub System.out.println("NcSoundingProfile validateDataSet()");
|
||||
* return false; }
|
||||
*/
|
||||
|
||||
}
|
||||
|
||||
|
|
|
@ -0,0 +1,179 @@
|
|||
package gov.noaa.nws.ncep.edex.common.sounding;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
*
|
||||
* gov.noaa.nws.ncep.edex.common.sounding.NcSoundingTools
|
||||
*
|
||||
* This code has been developed by the SIB for use in the AWIPS2 system.
|
||||
*
|
||||
* <pre>
|
||||
* SOFTWARE HISTORY
|
||||
*
|
||||
* Date Ticket# Engineer Description
|
||||
* ------- ------- -------- -----------
|
||||
* 07/24/2014 Chin Chen Initial coding
|
||||
* Support PW computation
|
||||
*
|
||||
*
|
||||
* </pre>
|
||||
*
|
||||
* @author Chin Chen
|
||||
* @version 1.0
|
||||
*/
|
||||
public class NcSoundingTools {
|
||||
|
||||
/*************************************************************
|
||||
* PRECIP_WATER Calculates the Precipitation Water in mm from Bottom level
|
||||
* of layer (mb) to Top level of layer (mb)
|
||||
*************************************************************/
|
||||
public static float precip_water(List<NcSoundingLayer> sndlayers) {
|
||||
float pw = 0;
|
||||
float d1, p1, d2, p2, tot, w1, w2, wbar;
|
||||
|
||||
// ----- Start with interpolated bottom layer -----
|
||||
// find surface layer or first layer with valid dewpoint
|
||||
int sfcIndex = 0;
|
||||
for (int i = 0; i < sndlayers.size(); i++) {
|
||||
if (sndlayers.get(i).getDewpoint() != -9999f) {
|
||||
sfcIndex = i;
|
||||
break;
|
||||
}
|
||||
}
|
||||
d1 = sndlayers.get(sfcIndex).getDewpoint(); // dewp
|
||||
// in
|
||||
// C
|
||||
p1 = sndlayers.get(sfcIndex).getPressure(); // pressure
|
||||
// n
|
||||
// mb
|
||||
|
||||
tot = 0;
|
||||
for (int i = sfcIndex + 1; i < sndlayers.size(); i++) {
|
||||
/* ----- Calculate every level that reports a dwpt ----- */
|
||||
d2 = sndlayers.get(i).getDewpoint(); // dewp
|
||||
// in C
|
||||
if (d2 == -9999f)
|
||||
continue;
|
||||
p2 = sndlayers.get(i).getPressure(); // pressure
|
||||
// n mb
|
||||
w1 = mixingRatio(d1, p1);
|
||||
w2 = mixingRatio(d2, p2);
|
||||
wbar = (w1 + w2) / 2;
|
||||
tot = tot + wbar * (p1 - p2);
|
||||
// System.out.println("p1=" + p1 + " d1=" + d1 + " p2=" + p2 +
|
||||
// " d2="
|
||||
// + d2);
|
||||
d1 = d2;
|
||||
p1 = p2;
|
||||
// test the case when top level is 400 mb
|
||||
// if (p2 == 400)
|
||||
// break;
|
||||
}
|
||||
|
||||
/* ----- Convert to mm (from g*mb/kg) ----- */
|
||||
pw = tot * 0.00040173f * 25.4f;
|
||||
|
||||
return pw;
|
||||
}
|
||||
|
||||
public static float precip_water2(List<NcSoundingLayer2> sndlayers) {
|
||||
float pw = 0;
|
||||
float d1, p1, d2, p2, tot, w1, w2, wbar;
|
||||
if (sndlayers == null || sndlayers.size() <= 0)
|
||||
return 0;
|
||||
// ----- Start with interpolated bottom layer -----
|
||||
// find surface layer or first layer with valid dewpoint
|
||||
int sfcIndex = 0;
|
||||
for (int i = 0; i < sndlayers.size(); i++) {
|
||||
if (sndlayers.get(i).getDewpoint().getValue().floatValue() != -9999f) {
|
||||
sfcIndex = i;
|
||||
break;
|
||||
}
|
||||
}
|
||||
d1 = sndlayers.get(sfcIndex).getDewpoint().getValue().floatValue(); // dewp
|
||||
// in
|
||||
// C
|
||||
p1 = sndlayers.get(sfcIndex).getPressure().getValue().floatValue(); // pressure
|
||||
// n
|
||||
// mb
|
||||
|
||||
tot = 0;
|
||||
for (int i = sfcIndex + 1; i < sndlayers.size(); i++) {
|
||||
/* ----- Calculate every level that reports a dwpt ----- */
|
||||
d2 = sndlayers.get(i).getDewpoint().getValue().floatValue(); // dewp
|
||||
// in C
|
||||
if (d2 == -9999f)
|
||||
continue;
|
||||
p2 = sndlayers.get(i).getPressure().getValue().floatValue(); // pressure
|
||||
// n mb
|
||||
w1 = mixingRatio(d1, p1);
|
||||
w2 = mixingRatio(d2, p2);
|
||||
wbar = (w1 + w2) / 2;
|
||||
tot = tot + wbar * (p1 - p2);
|
||||
d1 = d2;
|
||||
p1 = p2;
|
||||
// test the case when top level is 400 mb
|
||||
// if (p2 == 400)
|
||||
// break;
|
||||
}
|
||||
|
||||
/* ----- Convert to mm (from g*mb/kg) ----- */
|
||||
pw = tot * 0.00040173f * 25.4f;
|
||||
|
||||
return pw;
|
||||
}
|
||||
|
||||
/*
|
||||
* Compute mixing ratio from DWPC and PRES. Chin: copy from
|
||||
* gov.noaa.nws.ncep.edex.uengine.tasks.profile.MergeSounding
|
||||
*/
|
||||
private static float mixingRatio(float td, float pres) {
|
||||
float vapr = vaporPressure(td);
|
||||
|
||||
float corr = (1.001f + ((pres - 100.f) / 900.f) * .0034f);
|
||||
|
||||
float e = corr * vapr;
|
||||
if (e > (.5f * pres)) {
|
||||
return -9999f;
|
||||
} else {
|
||||
return .62197f * (e / (pres - e)) * 1000.f;
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* Compute vapor pressure from DWPC. Chin: copy from
|
||||
* gov.noaa.nws.ncep.edex.uengine.tasks.profile.MergeSounding
|
||||
*/
|
||||
private static float vaporPressure(float td) {
|
||||
return (6.112f * (float) Math.exp((17.67 * td) / (td + 243.5)));
|
||||
}
|
||||
|
||||
// The followings are converted from BigSharp, the computation results are
|
||||
// about the same as above methods.
|
||||
// private static float mixratio(float pres, float temp)
|
||||
//
|
||||
// {
|
||||
// float x, wfw, fwesw;
|
||||
//
|
||||
// x = 0.02f * (temp - 12.5f + 7500.0f / pres);
|
||||
// wfw = 1.0f + 0.0000045f * pres + 0.0014f * x * x;
|
||||
// fwesw = wfw * vappres(temp);
|
||||
// return 621.97f * (fwesw / (pres - fwesw));
|
||||
// }
|
||||
//
|
||||
// private static float vappres(float temp)
|
||||
//
|
||||
// {
|
||||
// double pol;
|
||||
// pol = temp * (1.1112018e-17 + temp * (-3.0994571e-20));
|
||||
// pol = temp * (2.1874425e-13 + temp * (-1.789232e-15 + pol));
|
||||
// pol = temp * (4.3884180e-09 + temp * (-2.988388e-11 + pol));
|
||||
// pol = temp * (7.8736169e-05 + temp * (-6.111796e-07 + pol));
|
||||
// pol = .99999683e-00 + temp * (-9.082695e-03 + pol);
|
||||
// pol = (pol * pol);
|
||||
// pol = (pol * pol);
|
||||
// return (6.1078f / (float) (pol * pol));
|
||||
// }
|
||||
|
||||
}
|
|
@ -1,532 +0,0 @@
|
|||
/**
|
||||
*
|
||||
*/
|
||||
package gov.noaa.nws.ncep.edex.tools.decoder;
|
||||
|
||||
import java.util.regex.Matcher;
|
||||
import java.util.regex.Pattern;
|
||||
|
||||
import org.apache.commons.logging.Log;
|
||||
import org.apache.commons.logging.LogFactory;
|
||||
|
||||
//import com.raytheon.edex.tools.decoder.LatLonPoint; //TO10
|
||||
import com.raytheon.uf.edex.decodertools.core.LatLonPoint; //TO11
|
||||
|
||||
/**
|
||||
* VOR - A *TEMPORARY* enum class to define some known VORs
|
||||
* used to define convective SIGMET locations. (See below.)
|
||||
*
|
||||
* This code has been developed by the SIB for use in the AWIPS2 system.
|
||||
*
|
||||
* <pre>
|
||||
* SOFTWARE HISTORY
|
||||
* Date Ticket# Engineer Description
|
||||
* ------------ ---------- ----------- --------------------------
|
||||
* 12 Jun 2009 95 B. Hebbard Initial creation.
|
||||
* 24 Jun 2009 95/132 B. Hebbard Add getLatLonPoint; move to common plugin
|
||||
* 22 Jul 2009 for 132 B. Hebbard Port to TO11 until station table avail. EDEX
|
||||
*
|
||||
* </pre>
|
||||
*
|
||||
* @author bhebbard
|
||||
* @version 1.0
|
||||
*/
|
||||
public enum VOR {
|
||||
|
||||
// (From GEMPAK vors.tbl -- for TEMPORARY use only, just until
|
||||
// this is handled by more general station/location design.
|
||||
//
|
||||
// Note these are a SUBSET of the high-altitude VORs in North America
|
||||
// used by AWC for SIGMET bounding points. It is NOT sufficient
|
||||
// for lookup in cases where where all VHF NAVAIDs -- or
|
||||
// even all VORs -- are required [say, for PIREP decoding])
|
||||
//
|
||||
// Lat Lon
|
||||
YSJ ( 45.32 , -65.88 ) ,
|
||||
HUL ( 46.04 , -67.83 ) ,
|
||||
PQI ( 46.77 , -68.09 ) ,
|
||||
MLT ( 45.58 , -68.52 ) ,
|
||||
BGR ( 44.84 , -68.87 ) ,
|
||||
ACK ( 41.28 , -70.03 ) ,
|
||||
ENE ( 43.43 , -70.61 ) ,
|
||||
BOS ( 42.36 , -70.99 ) ,
|
||||
YQB ( 46.80 , -71.38 ) ,
|
||||
PVD ( 41.72 , -71.43 ) ,
|
||||
CON ( 43.22 , -71.58 ) ,
|
||||
YSC ( 45.43 , -71.68 ) ,
|
||||
HTO ( 40.92 , -72.32 ) ,
|
||||
MPV ( 44.22 , -72.57 ) ,
|
||||
BDL ( 41.94 , -72.69 ) ,
|
||||
PLB ( 44.69 , -73.52 ) ,
|
||||
JFK ( 40.63 , -73.77 ) ,
|
||||
ALB ( 42.75 , -73.80 ) ,
|
||||
CYN ( 39.82 , -74.43 ) ,
|
||||
SAX ( 41.07 , -74.54 ) ,
|
||||
MSS ( 44.91 , -74.72 ) ,
|
||||
SIE ( 39.10 , -74.80 ) ,
|
||||
HNK ( 42.06 , -75.32 ) ,
|
||||
SBY ( 38.35 , -75.52 ) ,
|
||||
YOW ( 45.32 , -75.67 ) ,
|
||||
ETX ( 40.58 , -75.68 ) ,
|
||||
ECG ( 36.25 , -76.18 ) ,
|
||||
SYR ( 43.16 , -76.20 ) ,
|
||||
ORF ( 36.89 , -76.20 ) ,
|
||||
EMI ( 39.50 , -76.98 ) ,
|
||||
HAR ( 40.23 , -77.02 ) ,
|
||||
DCA ( 38.86 , -77.04 ) ,
|
||||
RIC ( 37.50 , -77.32 ) ,
|
||||
CSN ( 38.64 , -77.87 ) ,
|
||||
ILM ( 34.35 , -77.87 ) ,
|
||||
SLT ( 41.51 , -77.97 ) ,
|
||||
PSB ( 40.92 , -77.99 ) ,
|
||||
BUF ( 42.93 , -78.65 ) ,
|
||||
RDU ( 35.87 , -78.78 ) ,
|
||||
JST ( 40.32 , -78.83 ) ,
|
||||
JHW ( 42.19 , -79.12 ) ,
|
||||
LYH ( 37.25 , -79.23 ) ,
|
||||
YYZ ( 43.67 , -79.63 ) ,
|
||||
FLO ( 34.23 , -79.66 ) ,
|
||||
GSO ( 36.05 , -79.98 ) ,
|
||||
CHS ( 32.89 , -80.04 ) ,
|
||||
PBI ( 26.68 , -80.09 ) ,
|
||||
EKN ( 38.92 , -80.10 ) ,
|
||||
EWC ( 40.83 , -80.21 ) ,
|
||||
ERI ( 42.02 , -80.30 ) ,
|
||||
MIA ( 25.80 , -80.30 ) ,
|
||||
VRB ( 27.68 , -80.49 ) ,
|
||||
PSK ( 37.09 , -80.71 ) ,
|
||||
AIR ( 40.02 , -80.82 ) ,
|
||||
CLT ( 35.22 , -80.93 ) ,
|
||||
CAE ( 33.86 , -81.05 ) ,
|
||||
YVV ( 44.75 , -81.10 ) ,
|
||||
SAV ( 32.16 , -81.11 ) ,
|
||||
OMN ( 29.30 , -81.11 ) ,
|
||||
BKW ( 37.78 , -81.12 ) ,
|
||||
ORL ( 28.54 , -81.34 ) ,
|
||||
CRG ( 30.34 , -81.51 ) ,
|
||||
EYW ( 24.59 , -81.80 ) ,
|
||||
FMY ( 26.58 , -81.87 ) , // OBSOLETE
|
||||
SPA ( 35.03 , -81.93 ) ,
|
||||
HNN ( 38.75 , -82.03 ) ,
|
||||
HMV ( 36.44 , -82.13 ) ,
|
||||
CLE ( 41.42 , -81.85 ) ,
|
||||
IRQ ( 33.71 , -82.16 ) ,
|
||||
AMG ( 31.54 , -82.51 ) ,
|
||||
SRQ ( 27.40 , -82.55 ) ,
|
||||
APE ( 40.15 , -82.59 ) ,
|
||||
PIE ( 27.91 , -82.68 ) ,
|
||||
ECK ( 43.26 , -82.72 ) ,
|
||||
CTY ( 29.60 , -83.05 ) ,
|
||||
ODF ( 34.70 , -83.30 ) ,
|
||||
DXO ( 42.21 , -83.37 ) ,
|
||||
ASP ( 44.45 , -83.39 ) ,
|
||||
MCN ( 32.69 , -83.65 ) ,
|
||||
FNT ( 42.97 , -83.74 ) ,
|
||||
VXV ( 35.90 , -83.89 ) ,
|
||||
ROD ( 40.29 , -84.04 ) ,
|
||||
MBS ( 43.53 , -84.08 ) ,
|
||||
LOZ ( 37.03 , -84.12 ) ,
|
||||
ABY ( 31.65 , -84.30 ) , // OBSOLETE
|
||||
SSM ( 46.41 , -84.31 ) ,
|
||||
TLH ( 30.56 , -84.37 ) ,
|
||||
ATL ( 33.63 , -84.44 ) ,
|
||||
CVG ( 39.02 , -84.70 ) ,
|
||||
GQO ( 34.96 , -85.15 ) ,
|
||||
FWA ( 40.98 , -85.19 ) ,
|
||||
LGC ( 33.05 , -85.21 ) ,
|
||||
GRR ( 42.79 , -85.50 ) ,
|
||||
TVC ( 44.67 , -85.55 ) ,
|
||||
LOU ( 38.10 , -85.58 ) , // OBSOLETE
|
||||
MKG ( 43.17 , -86.04 ) ,
|
||||
PMM ( 42.47 , -86.11 ) ,
|
||||
GIJ ( 41.77 , -86.32 ) ,
|
||||
MGM ( 32.22 , -86.32 ) ,
|
||||
IND ( 39.81 , -86.37 ) ,
|
||||
BWG ( 36.93 , -86.44 ) ,
|
||||
BNA ( 36.14 , -86.68 ) ,
|
||||
CEW ( 30.83 , -86.68 ) ,
|
||||
VUZ ( 33.67 , -86.90 ) ,
|
||||
BVT ( 40.56 , -87.07 ) ,
|
||||
TTH ( 39.49 , -87.25 ) ,
|
||||
MSL ( 34.70 , -87.48 ) ,
|
||||
SAW ( 46.36 , -87.40 ) ,
|
||||
PXV ( 37.93 , -87.76 ) ,
|
||||
ORD ( 41.98 , -87.90 ) ,
|
||||
GRB ( 44.56 , -88.19 ) ,
|
||||
BAE ( 43.12 , -88.28 ) ,
|
||||
JOT ( 41.55 , -88.32 ) ,
|
||||
SJI ( 30.73 , -88.36 ) ,
|
||||
IGB ( 33.48 , -88.52 ) ,
|
||||
MEI ( 32.38 , -88.80 ) ,
|
||||
DEC ( 39.74 , -88.86 ) ,
|
||||
YQT ( 48.37 , -89.32 ) ,
|
||||
DYR ( 36.02 , -89.32 ) ,
|
||||
RHI ( 45.63 , -89.45 ) ,
|
||||
BDF ( 41.16 , -89.59 ) ,
|
||||
DLL ( 43.55 , -89.76 ) ,
|
||||
MEM ( 35.06 , -89.98 ) ,
|
||||
LEV ( 29.18 , -90.10 ) ,
|
||||
JAN ( 32.51 , -90.17 ) ,
|
||||
MSY ( 30.00 , -90.27 ) , // OBSOLETE
|
||||
FAM ( 37.67 , -90.23 ) ,
|
||||
MCB ( 31.30 , -90.26 ) ,
|
||||
SQS ( 33.46 , -90.28 ) ,
|
||||
STL ( 38.86 , -90.48 ) ,
|
||||
DBQ ( 42.40 , -90.71 ) ,
|
||||
ARG ( 36.11 , -90.95 ) ,
|
||||
UIN ( 39.85 , -91.28 ) ,
|
||||
BTR ( 30.48 , -91.30 ) ,
|
||||
ODI ( 43.91 , -91.47 ) ,
|
||||
EAU ( 44.90 , -91.48 ) ,
|
||||
IOW ( 41.52 , -91.61 ) ,
|
||||
MLU ( 32.52 , -92.03 ) ,
|
||||
LIT ( 34.68 , -92.18 ) ,
|
||||
DLH ( 46.80 , -92.20 ) ,
|
||||
COU ( 38.82 , -92.22 ) ,
|
||||
AEX ( 31.26 , -92.50 ) ,
|
||||
IRK ( 40.14 , -92.59 ) ,
|
||||
ELD ( 33.26 , -92.74 ) ,
|
||||
LCH ( 30.14 , -93.11 ) ,
|
||||
MSP ( 44.88 , -93.23 ) ,
|
||||
MCW ( 43.09 , -93.33 ) ,
|
||||
SGF ( 37.36 , -93.33 ) ,
|
||||
INL ( 48.57 , -93.40 ) ,
|
||||
DSM ( 41.44 , -93.65 ) ,
|
||||
EIC ( 32.77 , -93.81 ) ,
|
||||
BRD ( 46.35 , -94.03 ) ,
|
||||
TXK ( 33.51 , -94.07 ) ,
|
||||
RZC ( 36.25 , -94.12 ) ,
|
||||
FSM ( 35.38 , -94.27 ) ,
|
||||
FOD ( 42.61 , -94.29 ) ,
|
||||
BUM ( 38.27 , -94.49 ) ,
|
||||
MKC ( 39.28 , -94.59 ) , // OBSOLETE
|
||||
LFK ( 31.16 , -94.72 ) ,
|
||||
GGG ( 32.42 , -94.75 ) ,
|
||||
BJI ( 47.58 , -95.02 ) ,
|
||||
RWF ( 44.47 , -95.13 ) ,
|
||||
OSW ( 37.15 , -95.20 ) ,
|
||||
IAH ( 29.96 , -95.35 ) ,
|
||||
OVR ( 41.17 , -95.74 ) ,
|
||||
MLC ( 34.85 , -95.78 ) ,
|
||||
TUL ( 36.20 , -95.79 ) ,
|
||||
PWE ( 40.20 , -96.21 ) ,
|
||||
PSX ( 28.76 , -96.31 ) ,
|
||||
FSD ( 43.65 , -96.78 ) ,
|
||||
FAR ( 46.75 , -96.85 ) ,
|
||||
DFW ( 32.87 , -97.03 ) , // OBSOLETE
|
||||
ADM ( 34.21 , -97.17 ) ,
|
||||
GFK ( 47.95 , -97.19 ) ,
|
||||
YWG ( 49.90 , -97.23 ) ,
|
||||
ACT ( 31.66 , -97.27 ) ,
|
||||
BRO ( 25.92 , -97.38 ) ,
|
||||
CRP ( 27.90 , -97.45 ) ,
|
||||
ICT ( 37.75 , -97.58 ) ,
|
||||
OKC ( 35.36 , -97.61 ) ,
|
||||
SLN ( 38.93 , -97.62 ) ,
|
||||
AUS ( 30.30 , -97.70 ) , // OBSOLETE
|
||||
END ( 36.35 , -97.92 ) ,
|
||||
OBH ( 41.38 , -98.35 ) ,
|
||||
ABR ( 45.42 , -98.37 ) ,
|
||||
SAT ( 29.64 , -98.46 ) ,
|
||||
SPS ( 33.99 , -98.59 ) ,
|
||||
ONL ( 42.47 , -98.69 ) ,
|
||||
LRD ( 27.48 , -99.42 ) ,
|
||||
JCT ( 30.60 , -99.82 ) ,
|
||||
ABI ( 32.48 , -99.86 ) ,
|
||||
GAG ( 36.34 , -99.88 ) ,
|
||||
ANW ( 42.57 , -99.99 ) ,
|
||||
PIR ( 44.40 , -100.17 ) ,
|
||||
HLC ( 39.26 , -100.23 ) ,
|
||||
CDS ( 34.37 , -100.28 ) ,
|
||||
SJT ( 31.38 , -100.46 ) ,
|
||||
MCK ( 40.20 , -100.59 ) ,
|
||||
BIS ( 46.77 , -100.67 ) ,
|
||||
LBF ( 41.13 , -100.72 ) ,
|
||||
GCK ( 37.92 , -100.73 ) ,
|
||||
DLF ( 29.36 , -100.77 ) ,
|
||||
LBL ( 37.04 , -100.97 ) ,
|
||||
MOT ( 48.26 , -101.29 ) ,
|
||||
AMA ( 35.29 , -101.64 ) ,
|
||||
GLD ( 39.39 , -101.69 ) ,
|
||||
DPR ( 45.08 , -101.72 ) ,
|
||||
LBB ( 33.70 , -101.92 ) ,
|
||||
MAF ( 32.02 , -102.18 ) ,
|
||||
LAA ( 38.20 , -102.69 ) ,
|
||||
DIK ( 46.86 , -102.77 ) ,
|
||||
TXO ( 34.50 , -102.84 ) ,
|
||||
SNY ( 41.10 , -102.98 ) ,
|
||||
FST ( 30.95 , -102.98 ) ,
|
||||
RAP ( 43.98 , -103.01 ) ,
|
||||
AKO ( 40.16 , -103.18 ) ,
|
||||
INK ( 31.87 , -103.24 ) ,
|
||||
BFF ( 41.89 , -103.48 ) ,
|
||||
TBE ( 37.27 , -103.60 ) ,
|
||||
TCC ( 35.18 , -103.60 ) ,
|
||||
ISN ( 48.18 , -103.63 ) ,
|
||||
MRF ( 30.30 , -103.95 ) ,
|
||||
PUB ( 38.29 , -104.43 ) ,
|
||||
ROW ( 33.34 , -104.62 ) , // OBSOLETE
|
||||
DEN ( 39.81 , -104.66 ) ,
|
||||
CYS ( 41.21 , -104.77 ) ,
|
||||
CIM ( 36.49 , -104.87 ) ,
|
||||
LVS ( 35.66 , -105.14 ) , // OBSOLETE
|
||||
LAR ( 41.33 , -105.72 ) ,
|
||||
ALS ( 37.35 , -105.82 ) ,
|
||||
MLS ( 46.38 , -105.95 ) ,
|
||||
DDY ( 43.09 , -106.28 ) ,
|
||||
ELP ( 31.82 , -106.28 ) ,
|
||||
CZI ( 44.00 , -106.44 ) ,
|
||||
GGW ( 48.22 , -106.63 ) ,
|
||||
ABQ ( 35.04 , -106.82 ) ,
|
||||
DBL ( 39.44 , -106.90 ) ,
|
||||
HBU ( 38.45 , -107.04 ) ,
|
||||
SHR ( 44.84 , -107.06 ) ,
|
||||
TCS ( 33.28 , -107.28 ) ,
|
||||
CHE ( 40.52 , -107.31 ) ,
|
||||
DMN ( 32.28 , -107.60 ) ,
|
||||
YYN ( 50.28 , -107.68 ) ,
|
||||
FMN ( 36.75 , -108.10 ) , // OBSOLETE
|
||||
BOY ( 43.46 , -108.30 ) ,
|
||||
BIL ( 45.81 , -108.63 ) ,
|
||||
JNC ( 39.06 , -108.79 ) ,
|
||||
DVC ( 37.81 , -108.93 ) ,
|
||||
OCS ( 41.59 , -109.02 ) ,
|
||||
SJN ( 34.42 , -109.14 ) ,
|
||||
SSO ( 32.27 , -109.26 ) ,
|
||||
LWT ( 47.05 , -109.61 ) ,
|
||||
HVR ( 48.54 , -109.77 ) ,
|
||||
BPI ( 42.58 , -110.11 ) ,
|
||||
MTU ( 40.15 , -110.13 ) ,
|
||||
HVE ( 38.42 , -110.70 ) ,
|
||||
YXH ( 50.02 , -110.72 ) ,
|
||||
JAC ( 43.62 , -110.73 ) ,
|
||||
INW ( 35.06 , -110.80 ) ,
|
||||
TUS ( 32.10 , -110.92 ) ,
|
||||
TBC ( 36.12 , -111.27 ) ,
|
||||
GTF ( 47.45 , -111.41 ) ,
|
||||
HLN ( 46.61 , -111.95 ) ,
|
||||
PHX ( 33.43 , -112.02 ) ,
|
||||
SLC ( 40.85 , -111.98 ) ,
|
||||
DBS ( 44.09 , -112.21 ) ,
|
||||
BCE ( 37.69 , -112.30 ) ,
|
||||
MLD ( 42.20 , -112.45 ) ,
|
||||
DRK ( 34.70 , -112.48 ) ,
|
||||
DTA ( 39.30 , -112.51 ) ,
|
||||
DLN ( 45.25 , -112.55 ) ,
|
||||
PIH ( 42.87 , -112.65 ) ,
|
||||
YQL ( 49.63 , -112.80 ) ,
|
||||
PGS ( 35.62 , -113.54 ) ,
|
||||
BVL ( 40.73 , -113.76 ) ,
|
||||
LKT ( 45.02 , -114.08 ) ,
|
||||
FCA ( 48.21 , -114.18 ) ,
|
||||
ILC ( 38.25 , -114.39 ) ,
|
||||
EED ( 34.77 , -114.47 ) ,
|
||||
TWF ( 42.48 , -114.49 ) ,
|
||||
BZA ( 32.77 , -114.60 ) ,
|
||||
ELY ( 39.30 , -114.85 ) ,
|
||||
LAS ( 36.08 , -115.16 ) ,
|
||||
MLP ( 47.46 , -115.65 ) ,
|
||||
YXC ( 49.60 , -115.78 ) ,
|
||||
TRM ( 33.63 , -116.16 ) ,
|
||||
BOI ( 43.55 , -116.19 ) ,
|
||||
DNJ ( 44.77 , -116.21 ) ,
|
||||
HEC ( 34.80 , -116.46 ) ,
|
||||
BTY ( 36.80 , -116.75 ) ,
|
||||
BAM ( 40.57 , -116.92 ) ,
|
||||
MZB ( 32.78 , -117.23 ) ,
|
||||
GEG ( 47.56 , -117.63 ) ,
|
||||
OAL ( 38.00 , -117.77 ) ,
|
||||
BKE ( 44.84 , -117.81 ) ,
|
||||
REO ( 42.59 , -117.87 ) ,
|
||||
LAX ( 33.93 , -118.43 ) ,
|
||||
PDT ( 45.70 , -118.94 ) ,
|
||||
EHF ( 35.48 , -119.10 ) ,
|
||||
EPH ( 47.38 , -119.42 ) ,
|
||||
FMG ( 39.53 , -119.66 ) ,
|
||||
RZS ( 34.51 , -119.77 ) ,
|
||||
CZQ ( 36.88 , -119.82 ) ,
|
||||
YKM ( 46.57 , -120.45 ) ,
|
||||
LKV ( 42.49 , -120.51 ) ,
|
||||
YDC ( 49.47 , -120.52 ) ,
|
||||
MOD ( 37.63 , -120.96 ) ,
|
||||
DSD ( 44.25 , -121.30 ) ,
|
||||
SAC ( 38.44 , -121.55 ) ,
|
||||
SNS ( 36.66 , -121.60 ) ,
|
||||
OAK ( 37.73 , -122.22 ) ,
|
||||
RBL ( 40.10 , -122.24 ) ,
|
||||
SEA ( 47.44 , -122.31 ) ,
|
||||
BLI ( 48.95 , -122.58 ) , // OBSOLETE
|
||||
PDX ( 45.58 , -122.60 ) ,
|
||||
PYE ( 38.08 , -122.87 ) ,
|
||||
OED ( 42.48 , -122.91 ) ,
|
||||
EUG ( 44.12 , -123.22 ) ,
|
||||
ENI ( 39.05 , -123.27 ) ,
|
||||
ONP ( 44.58 , -124.06 ) ,
|
||||
HQM ( 46.95 , -124.15 ) ,
|
||||
FOT ( 40.67 , -124.23 ) ,
|
||||
TOU ( 48.30 , -124.63 ) ,
|
||||
YQV ( 51.27 , -102.47 ) ,
|
||||
ANN ( 55.05 , -131.57 ) ,
|
||||
LVD ( 56.47 , -133.08 ) ,
|
||||
BKA ( 56.86 , -135.55 ) ,
|
||||
SSR ( 58.17 , -135.25 ) ,
|
||||
JNU ( 58.35 , -134.58 ) ,
|
||||
YAK ( 59.50 , -139.67 ) ,
|
||||
MDO ( 59.45 , -146.30 ) ,
|
||||
JOH ( 60.48 , -146.60 ) ,
|
||||
ODK ( 57.75 , -152.50 ) ,
|
||||
HOM ( 59.65 , -151.48 ) ,
|
||||
ENA ( 60.57 , -151.25 ) ,
|
||||
ANC ( 61.17 , -150.00 ) ,
|
||||
BGQ ( 61.53 , -149.82 ) ,
|
||||
ORT ( 62.97 , -141.93 ) ,
|
||||
GKN ( 62.15 , -145.45 ) ,
|
||||
TKA ( 62.32 , -150.10 ) ,
|
||||
SQA ( 61.10 , -155.63 ) ,
|
||||
DLG ( 59.05 , -158.50 ) ,
|
||||
AKN ( 58.68 , -156.65 ) ,
|
||||
PDN ( 56.95 , -158.65 ) ,
|
||||
CDB ( 55.20 , -162.73 ) ,
|
||||
DUT ( 53.90 , -166.55 ) ,
|
||||
NUD ( 51.88 , -176.65 ) ,
|
||||
SYA ( 52.72 , -174.12 ) ,
|
||||
SPY ( 57.17 , -170.22 ) ,
|
||||
EHM ( 58.66 , -162.07 ) ,
|
||||
HPB ( 61.52 , -166.14 ) ,
|
||||
BET ( 60.78 , -161.83 ) ,
|
||||
ANI ( 61.59 , -159.61 ) ,
|
||||
SMA ( 62.06 , -163.30 ) ,
|
||||
UNK ( 63.88 , -160.80 ) ,
|
||||
ULL ( 63.70 , -170.48 ) ,
|
||||
MCG ( 62.95 , -155.60 ) ,
|
||||
ENN ( 64.55 , -149.07 ) ,
|
||||
FAI ( 64.82 , -147.85 ) ,
|
||||
BIG ( 64.00 , -145.72 ) ,
|
||||
FYU ( 66.57 , -145.25 ) ,
|
||||
BTT ( 66.92 , -151.53 ) ,
|
||||
TAL ( 65.18 , -152.18 ) ,
|
||||
CQR ( 67.50 , -148.47 ) ,
|
||||
SCC ( 70.20 , -148.47 ) ,
|
||||
BTI ( 70.13 , -143.57 ) ,
|
||||
BRW ( 71.28 , -156.77 ) ,
|
||||
GAL ( 64.73 , -156.93 ) ,
|
||||
OME ( 64.52 , -165.45 ) ,
|
||||
OTZ ( 66.88 , -162.60 ) ,
|
||||
WLK ( 66.60 , -160.00 ) ,
|
||||
HSL ( 65.71 , -156.37 ) ,
|
||||
BSF ( 19.76 , -155.39 ) ,
|
||||
UPP ( 20.20 , -155.84 ) ,
|
||||
ITO ( 19.72 , -155.01 ) ,
|
||||
HNL ( 21.33 , -157.93 ) ,
|
||||
OGG ( 20.91 , -156.42 ) ,
|
||||
NDB ( 20.88 , -156.44 ) ,
|
||||
MUE ( 20.00 , -155.67 ) ,
|
||||
NGF ( 21.45 , -157.76 ) ,
|
||||
MKK ( 21.14 , -157.17 ) ,
|
||||
NBS ( 22.04 , -159.79 ) ,
|
||||
CKH ( 21.27 , -157.70 ) ,
|
||||
IAI ( 19.65 , -156.02 ) ,
|
||||
LLD ( 20.77 , -156.97 ) ,
|
||||
LNY ( 20.76 , -156.97 ) ,
|
||||
LIH ( 21.97 , -159.34 ) ,
|
||||
SOK ( 21.90 , -159.53 ) ,
|
||||
//
|
||||
// Newcomers! These are in the set of VORs now used by AWC for Convective SIGMET bounds,
|
||||
// but not in (out-of-the-box V5.11.4) $GEMTBL/stns/vors.tbl :
|
||||
//
|
||||
RSW ( 26.53 , -81.78 ) , // Lee County VORTAC Fort Myers FL L-VORTAC !? replaces FMY
|
||||
PZD ( 31.66 , -84.29 ) , // Pecan VORTAC Albany GA H-VORTACW replaces ABY
|
||||
IIU ( 38.10 , -85.58 ) , // Louisville VORTAC Louisville KY H-VORTAC replaces LOU
|
||||
HRV ( 29.85 , -90.00 ) , // Harvey VORTAC New Orleans LA H-VORTACW replaces MSY
|
||||
MCI ( 39.29 , -94.74 ) , // Kansas City VORTAC Kansas City MO H-VORTAC replaces MKC
|
||||
TTT ( 32.87 , -97.04 ) , // Maverick VOR/DME Dallas-Fort Worth TX H-VORW/DME replaces DFW
|
||||
CWK ( 30.38 , -97.53 ) , // Centex VORTAC Austin TX H-VORTACW replaces AUS
|
||||
CME ( 33.34 , -104.62 ) , // Chisum VORTAC Roswell NM H-VORTACW replaces ROW
|
||||
FTI ( 35.66 , -105.14 ) , // Fort Union VORTAC Las Vegas NM H-VORTACW replaces LVS
|
||||
RSK ( 36.75 , -108.10 ) , // Rattlesnake VORTAC Farmington NM H-VORTACW replaces FMN
|
||||
HUH ( 48.95 , -122.58 ) ; // Whatcom VORTAC Bellingham WA H-VORTACW replaces BLI
|
||||
|
||||
private static Log logger = LogFactory.getLog(VOR.class);
|
||||
|
||||
private double latitude;
|
||||
private double longitude;
|
||||
|
||||
private VOR (double latitude, double longitude)
|
||||
{
|
||||
this.latitude = latitude;
|
||||
this.longitude = longitude;
|
||||
}
|
||||
|
||||
public double getLatitude()
|
||||
{
|
||||
return latitude;
|
||||
}
|
||||
|
||||
public double getLongitude()
|
||||
{
|
||||
return longitude;
|
||||
}
|
||||
|
||||
public LatLonPoint getLatLonPoint()
|
||||
{
|
||||
return new LatLonPoint (latitude, longitude, LatLonPoint.INDEGREES);
|
||||
}
|
||||
|
||||
private enum Direction {
|
||||
N, NNE, NE, ENE, E, ESE, SE, SSE, S, SSW, SW, WSW, W, WNW, NW, NNW;
|
||||
public double getDegrees() { return ordinal() * 22.5; }
|
||||
}
|
||||
|
||||
private static final double ONE_NM_RADIANS = Math.toRadians (1.0 / 60.0);
|
||||
|
||||
/**
|
||||
* Given a VOR-relative reference string, returns a LatLonPoint
|
||||
* (com.raytheon.uf.edex.decodertools.core.LatLonPoint).
|
||||
*
|
||||
* @param location A String such as...
|
||||
* "BOS"
|
||||
* "20S EMI"
|
||||
* "30 WNW BUM"
|
||||
* " 40ENE HUH "
|
||||
* ...referencing a VOR listed in AC 00-45F
|
||||
* (Appendix F), optionally preceded by
|
||||
* distance in nautical miles and 16-point
|
||||
* compass direction string.
|
||||
* @return The decoded location as a LatLonPoint;
|
||||
* null on error (such as unrecognized VOR
|
||||
* identifier or direction string).
|
||||
*
|
||||
*/
|
||||
public static LatLonPoint getLatLonPoint(String location) {
|
||||
// Wrap decoding in a try block, in case of exception on
|
||||
// one ofthe two enum valueOf lookups, or other problems.
|
||||
try {
|
||||
location = location.trim();
|
||||
// VOR is always last 3 nonblank char of location
|
||||
String navaid = location.substring(location.length()-3);
|
||||
LatLonPoint point = VOR.valueOf(navaid).getLatLonPoint();
|
||||
// If there's an offset direction/bearing, process it
|
||||
if (location.length() > 3) {
|
||||
String u = location.substring(0, location.length()-3);
|
||||
Pattern p = Pattern.compile("^([0-9]+)\\s*([A-Z]+)");
|
||||
Matcher m = p.matcher(u);
|
||||
if (m.find()) {
|
||||
String distanceStr = m.group(1);
|
||||
String bearingStr = m.group(2);
|
||||
int distanceNM = Integer.parseInt(distanceStr);
|
||||
double distanceRad = distanceNM * ONE_NM_RADIANS;
|
||||
// LatLonPoint.positionOf thinks bearing is CCW, not CW...
|
||||
double bearingDeg = 360.0 - Direction.valueOf(bearingStr).getDegrees();
|
||||
double bearingRad = Math.toRadians(bearingDeg);
|
||||
point = point.positionOf(bearingRad, distanceRad);
|
||||
}
|
||||
}
|
||||
return point;
|
||||
}
|
||||
catch (Exception e) {
|
||||
logger.error("[Error decoding location: " + location + "]");
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
|
@ -1,13 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
||||
<NcInventoryDefinition xmlns:ns2="group" xmlns:ns3="http://www.example.org/productType">
|
||||
<inventoryName>ATCF</inventoryName>
|
||||
<inventoryParameters>pluginName,dataTime</inventoryParameters>
|
||||
<baseConstraints>
|
||||
<mapping key="reportType">
|
||||
<constraint constraintValue="ATCF" constraintType="EQUALS"/>
|
||||
</mapping>
|
||||
<mapping key="pluginName">
|
||||
<constraint constraintValue="atcf" constraintType="EQUALS"/>
|
||||
</mapping>
|
||||
</baseConstraints>
|
||||
</NcInventoryDefinition>
|
|
@ -1,10 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
||||
<NcInventoryDefinition xmlns:ns2="group" xmlns:ns3="http://www.example.org/productType">
|
||||
<inventoryName>AVNMOS</inventoryName>
|
||||
<inventoryParameters>pluginName,dataTime</inventoryParameters>
|
||||
<baseConstraints>
|
||||
<mapping key="pluginName">
|
||||
<constraint constraintValue="bufrmosAVN" constraintType="EQUALS"/>
|
||||
</mapping>
|
||||
</baseConstraints>
|
||||
</NcInventoryDefinition>
|
|
@ -1,13 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
||||
<NcInventoryDefinition xmlns:ns2="group" xmlns:ns3="http://www.example.org/productType">
|
||||
<inventoryName>AWW</inventoryName>
|
||||
<inventoryParameters>pluginName,reportType,dataTime</inventoryParameters>
|
||||
<baseConstraints>
|
||||
<!-- <mapping key="reportType">
|
||||
<constraint constraintValue="SEVERE_THUNDERSTORM_WATCH,TORNADO_WATCH_OUTLINE_UPDATE" constraintType="IN"/>
|
||||
</mapping>
|
||||
--> <mapping key="pluginName">
|
||||
<constraint constraintValue="aww" constraintType="EQUALS"/>
|
||||
</mapping>
|
||||
</baseConstraints>
|
||||
</NcInventoryDefinition>
|
|
@ -1,15 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
||||
<NcInventoryDefinition xmlns:ns2="group" xmlns:ns3="http://www.example.org/productType">
|
||||
<inventoryName>ENS_CYC</inventoryName>
|
||||
<!-- TODO : add model when it is added as a request constraint. Til then the
|
||||
times may be incorrect for some of the models -->
|
||||
<inventoryParameters>pluginName,dataTime</inventoryParameters>
|
||||
<baseConstraints>
|
||||
<mapping key="reportType">
|
||||
<constraint constraintValue="ENSCYC" constraintType="EQUALS"/>
|
||||
</mapping>
|
||||
<mapping key="pluginName">
|
||||
<constraint constraintValue="stormtrack" constraintType="EQUALS"/>
|
||||
</mapping>
|
||||
</baseConstraints>
|
||||
</NcInventoryDefinition>
|
|
@ -1,10 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
||||
<NcInventoryDefinition xmlns:ns2="group" xmlns:ns3="http://www.example.org/productType">
|
||||
<inventoryName>ETAMOS</inventoryName>
|
||||
<inventoryParameters>pluginName,dataTime</inventoryParameters>
|
||||
<baseConstraints>
|
||||
<mapping key="pluginName">
|
||||
<constraint constraintValue="bufrmosETA" constraintType="EQUALS"/>
|
||||
</mapping>
|
||||
</baseConstraints>
|
||||
</NcInventoryDefinition>
|
|
@ -1,10 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
||||
<NcInventoryDefinition xmlns:ns2="group" xmlns:ns3="http://www.example.org/productType">
|
||||
<inventoryName>GFSMOS</inventoryName>
|
||||
<inventoryParameters>pluginName,dataTime</inventoryParameters>
|
||||
<baseConstraints>
|
||||
<mapping key="pluginName">
|
||||
<constraint constraintValue="bufrmosGFS" constraintType="EQUALS"/>
|
||||
</mapping>
|
||||
</baseConstraints>
|
||||
</NcInventoryDefinition>
|
|
@ -1,10 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
||||
<NcInventoryDefinition xmlns:ns2="group" xmlns:ns3="http://www.example.org/productType">
|
||||
<inventoryName>GFSXMOS</inventoryName>
|
||||
<inventoryParameters>pluginName,dataTime</inventoryParameters>
|
||||
<baseConstraints>
|
||||
<mapping key="pluginName">
|
||||
<constraint constraintValue="bufrmosMRF" constraintType="EQUALS"/>
|
||||
</mapping>
|
||||
</baseConstraints>
|
||||
</NcInventoryDefinition>
|
|
@ -1,13 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
||||
<NcInventoryDefinition xmlns:ns2="group" xmlns:ns3="http://www.example.org/productType">
|
||||
<inventoryName>GINI</inventoryName>
|
||||
<inventoryParameters>pluginName,creatingEntity,sectorID,physicalElement,dataTime</inventoryParameters>
|
||||
<baseConstraints>
|
||||
<!-- <mapping key="creatingEntity">
|
||||
<constraint constraintValue="Composite" constraintType="EQUALS"/>
|
||||
</mapping>
|
||||
--> <mapping key="pluginName">
|
||||
<constraint constraintValue="satellite" constraintType="EQUALS"/>
|
||||
</mapping>
|
||||
</baseConstraints>
|
||||
</NcInventoryDefinition>
|
|
@ -1,10 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
||||
<NcInventoryDefinition xmlns:ns2="group" xmlns:ns3="http://www.example.org/productType">
|
||||
<inventoryName>HPCMOS</inventoryName>
|
||||
<inventoryParameters>pluginName,dataTime</inventoryParameters>
|
||||
<baseConstraints>
|
||||
<mapping key="pluginName">
|
||||
<constraint constraintValue="bufrmosHPC" constraintType="EQUALS"/>
|
||||
</mapping>
|
||||
</baseConstraints>
|
||||
</NcInventoryDefinition>
|
|
@ -1,13 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
||||
<NcInventoryDefinition xmlns:ns2="group" xmlns:ns3="http://www.example.org/productType">
|
||||
<inventoryName>IDFT</inventoryName>
|
||||
<inventoryParameters>pluginName,dataTime</inventoryParameters>
|
||||
<baseConstraints>
|
||||
<mapping key="reportType">
|
||||
<constraint constraintValue="idft" constraintType="EQUALS"/>
|
||||
</mapping>
|
||||
<mapping key="pluginName">
|
||||
<constraint constraintValue="idft" constraintType="EQUALS"/>
|
||||
</mapping>
|
||||
</baseConstraints>
|
||||
</NcInventoryDefinition>
|
|
@ -1,10 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
||||
<NcInventoryDefinition xmlns:ns2="group" xmlns:ns3="http://www.example.org/productType">
|
||||
<inventoryName>LAMPMOS</inventoryName>
|
||||
<inventoryParameters>pluginName,dataTime</inventoryParameters>
|
||||
<baseConstraints>
|
||||
<mapping key="pluginName">
|
||||
<constraint constraintValue="bufrmosLAMP" constraintType="EQUALS"/>
|
||||
</mapping>
|
||||
</baseConstraints>
|
||||
</NcInventoryDefinition>
|
|
@ -1,13 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
||||
<NcInventoryDefinition xmlns:ns2="group" xmlns:ns3="http://www.example.org/productType">
|
||||
<inventoryName>McIdas</inventoryName>
|
||||
<inventoryParameters>pluginName,satelliteName,areaName,resolution,imageType,dataTime</inventoryParameters>
|
||||
<baseConstraints>
|
||||
<mapping key="pluginName">
|
||||
<constraint constraintValue="mcidas" constraintType="EQUALS"/>
|
||||
</mapping>
|
||||
<!-- <mapping key="satelliteName">
|
||||
<constraint constraintValue="Global" constraintType="EQUALS"/>
|
||||
</mapping>
|
||||
--> </baseConstraints>
|
||||
</NcInventoryDefinition>
|
|
@ -1,13 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
||||
<NcInventoryDefinition xmlns:ns2="group" xmlns:ns3="http://www.example.org/productType">
|
||||
<inventoryName>ModelSounding</inventoryName>
|
||||
<inventoryParameters>pluginName,reportType,dataTime</inventoryParameters>
|
||||
<baseConstraints>
|
||||
<!-- <mapping key="reportType">
|
||||
<constraint constraintValue="ETA" constraintType="EQUALS"/>
|
||||
</mapping>
|
||||
--> <mapping key="pluginName">
|
||||
<constraint constraintValue="modelsounding" constraintType="EQUALS"/>
|
||||
</mapping>
|
||||
</baseConstraints>
|
||||
</NcInventoryDefinition>
|
|
@ -1,10 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
||||
<NcInventoryDefinition xmlns:ns2="group" xmlns:ns3="http://www.example.org/productType">
|
||||
<inventoryName>NatlMosaic</inventoryName>
|
||||
<inventoryParameters>pluginName,productCode,dataTime</inventoryParameters>
|
||||
<baseConstraints>
|
||||
<mapping key="pluginName">
|
||||
<constraint constraintValue="mosaic" constraintType="EQUALS"/>
|
||||
</mapping>
|
||||
</baseConstraints>
|
||||
</NcInventoryDefinition>
|
|
@ -1,13 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
||||
<NcInventoryDefinition xmlns:ns2="group" xmlns:ns3="http://www.example.org/productType">
|
||||
<inventoryName>NcScat</inventoryName>
|
||||
<inventoryParameters>pluginName,reportType,dataTime</inventoryParameters>
|
||||
<baseConstraints>
|
||||
<!-- <mapping key="reportType">
|
||||
<constraint constraintValue="Exasct" constraintType="EQUALS"/>
|
||||
</mapping>
|
||||
--> <mapping key="pluginName">
|
||||
<constraint constraintValue="ncscat" constraintType="EQUALS"/>
|
||||
</mapping>
|
||||
</baseConstraints>
|
||||
</NcInventoryDefinition>
|
|
@ -1,4 +0,0 @@
|
|||
This directory contains Inventory Definitions to match current ResourceDefinitions that have
|
||||
been changed to not query the inventory. (inventoryEnabled=false)
|
||||
If for some reason we need to enable one of these then move this back up to the NcInventoryDefinitions
|
||||
directory.
|
|
@ -1,13 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
||||
<NcInventoryDefinition xmlns:ns2="group" xmlns:ns3="http://www.example.org/productType">
|
||||
<inventoryName>AIREP</inventoryName>
|
||||
<inventoryParameters>pluginName,dataTime</inventoryParameters>
|
||||
<baseConstraints>
|
||||
<mapping key="reportType">
|
||||
<constraint constraintValue="AIREP" constraintType="EQUALS"/>
|
||||
</mapping>
|
||||
<mapping key="pluginName">
|
||||
<constraint constraintValue="ncairep" constraintType="EQUALS"/>
|
||||
</mapping>
|
||||
</baseConstraints>
|
||||
</NcInventoryDefinition>
|
|
@ -1,13 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
||||
<NcInventoryDefinition xmlns:ns2="group" xmlns:ns3="http://www.example.org/productType">
|
||||
<inventoryName>AIRMET</inventoryName>
|
||||
<inventoryParameters>pluginName,dataTime</inventoryParameters>
|
||||
<baseConstraints>
|
||||
<mapping key="reportType">
|
||||
<constraint constraintValue="airmet" constraintType="EQUALS"/>
|
||||
</mapping>
|
||||
<mapping key="pluginName">
|
||||
<constraint constraintValue="airmet" constraintType="EQUALS"/>
|
||||
</mapping>
|
||||
</baseConstraints>
|
||||
</NcInventoryDefinition>
|
|
@ -1,13 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
||||
<NcInventoryDefinition xmlns:ns2="group" xmlns:ns3="http://www.example.org/productType">
|
||||
<inventoryName>ASCT</inventoryName>
|
||||
<inventoryParameters>pluginName,dataTime</inventoryParameters>
|
||||
<baseConstraints>
|
||||
<mapping key="reportType">
|
||||
<constraint constraintValue="ascat%" constraintType="LIKE"/>
|
||||
</mapping>
|
||||
<mapping key="pluginName">
|
||||
<constraint constraintValue="ncscat" constraintType="EQUALS"/>
|
||||
</mapping>
|
||||
</baseConstraints>
|
||||
</NcInventoryDefinition>
|
|
@ -1,13 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
||||
<NcInventoryDefinition xmlns:ns2="group" xmlns:ns3="http://www.example.org/productType">
|
||||
<inventoryName>CSIG</inventoryName>
|
||||
<inventoryParameters>pluginName,dataTime</inventoryParameters>
|
||||
<baseConstraints>
|
||||
<mapping key="reportType">
|
||||
<constraint constraintValue="convsigmet" constraintType="EQUALS"/>
|
||||
</mapping>
|
||||
<mapping key="pluginName">
|
||||
<constraint constraintValue="convsigmet" constraintType="EQUALS"/>
|
||||
</mapping>
|
||||
</baseConstraints>
|
||||
</NcInventoryDefinition>
|
|
@ -1,13 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
||||
<NcInventoryDefinition xmlns:ns2="group" xmlns:ns3="http://www.example.org/productType">
|
||||
<inventoryName>EXASCT</inventoryName>
|
||||
<inventoryParameters>pluginName,dataTime</inventoryParameters>
|
||||
<baseConstraints>
|
||||
<mapping key="reportType">
|
||||
<constraint constraintValue="Exasct%" constraintType="LIKE"/>
|
||||
</mapping>
|
||||
<mapping key="pluginName">
|
||||
<constraint constraintValue="ncscat" constraintType="EQUALS"/>
|
||||
</mapping>
|
||||
</baseConstraints>
|
||||
</NcInventoryDefinition>
|
|
@ -1,13 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
||||
<NcInventoryDefinition xmlns:ns2="group" xmlns:ns3="http://www.example.org/productType">
|
||||
<inventoryName>FFA</inventoryName>
|
||||
<inventoryParameters>pluginName,reportType,dataTime</inventoryParameters>
|
||||
<baseConstraints>
|
||||
<mapping key="reportType">
|
||||
<constraint constraintValue="FLASH_FLOOD_ADVISORY,FLASH_FLOOD_WARNING,FLASH_FLOOD_WATCH,FLASH_FLOOD_STATEMENT,FLOOD_WATCH" constraintType="IN"/>
|
||||
</mapping>
|
||||
<mapping key="pluginName">
|
||||
<constraint constraintValue="aww" constraintType="EQUALS"/>
|
||||
</mapping>
|
||||
</baseConstraints>
|
||||
</NcInventoryDefinition>
|
|
@ -1,13 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
||||
<NcInventoryDefinition xmlns:ns2="group" xmlns:ns3="http://www.example.org/productType">
|
||||
<inventoryName>FFG</inventoryName>
|
||||
<inventoryParameters>pluginName,dataTime</inventoryParameters>
|
||||
<baseConstraints>
|
||||
<mapping key="reportType">
|
||||
<constraint constraintValue="FFG" constraintType="EQUALS"/>
|
||||
</mapping>
|
||||
<mapping key="pluginName">
|
||||
<constraint constraintValue="ffg" constraintType="EQUALS"/>
|
||||
</mapping>
|
||||
</baseConstraints>
|
||||
</NcInventoryDefinition>
|
|
@ -1,13 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
||||
<NcInventoryDefinition xmlns:ns2="group" xmlns:ns3="http://www.example.org/productType">
|
||||
<inventoryName>FYC</inventoryName>
|
||||
<inventoryParameters>pluginName,areaName,resolution,imageType,dataTime</inventoryParameters>
|
||||
<baseConstraints>
|
||||
<mapping key="pluginName">
|
||||
<constraint constraintValue="mcidas" constraintType="EQUALS"/>
|
||||
</mapping>
|
||||
<mapping key="satelliteName">
|
||||
<constraint constraintValue="FYC" constraintType="EQUALS"/>
|
||||
</mapping>
|
||||
</baseConstraints>
|
||||
</NcInventoryDefinition>
|
|
@ -1,13 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
||||
<NcInventoryDefinition xmlns:ns2="group" xmlns:ns3="http://www.example.org/productType">
|
||||
<inventoryName>GINI_DMSP</inventoryName>
|
||||
<inventoryParameters>pluginName,sectorID,physicalElement,dataTime</inventoryParameters>
|
||||
<baseConstraints>
|
||||
<mapping key="creatingEntity">
|
||||
<constraint constraintValue="DMSP" constraintType="EQUALS"/>
|
||||
</mapping>
|
||||
<mapping key="pluginName">
|
||||
<constraint constraintValue="satellite" constraintType="EQUALS"/>
|
||||
</mapping>
|
||||
</baseConstraints>
|
||||
</NcInventoryDefinition>
|
|
@ -1,13 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
||||
<NcInventoryDefinition xmlns:ns2="group" xmlns:ns3="http://www.example.org/productType">
|
||||
<inventoryName>GINI_ERS-QuickSCAT-Scatterometer</inventoryName>
|
||||
<inventoryParameters>pluginName,sectorID,physicalElement,dataTime</inventoryParameters>
|
||||
<baseConstraints>
|
||||
<mapping key="creatingEntity">
|
||||
<constraint constraintValue="ERS-QuickSCAT-Scatterometer" constraintType="EQUALS"/>
|
||||
</mapping>
|
||||
<mapping key="pluginName">
|
||||
<constraint constraintValue="satellite" constraintType="EQUALS"/>
|
||||
</mapping>
|
||||
</baseConstraints>
|
||||
</NcInventoryDefinition>
|
|
@ -1,13 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
||||
<NcInventoryDefinition xmlns:ns2="group" xmlns:ns3="http://www.example.org/productType">
|
||||
<inventoryName>GINI_GMS</inventoryName>
|
||||
<inventoryParameters>pluginName,sectorID,physicalElement,dataTime</inventoryParameters>
|
||||
<baseConstraints>
|
||||
<mapping key="creatingEntity">
|
||||
<constraint constraintValue="GMS" constraintType="EQUALS"/>
|
||||
</mapping>
|
||||
<mapping key="pluginName">
|
||||
<constraint constraintValue="satellite" constraintType="EQUALS"/>
|
||||
</mapping>
|
||||
</baseConstraints>
|
||||
</NcInventoryDefinition>
|
|
@ -1,13 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
||||
<NcInventoryDefinition xmlns:ns2="group" xmlns:ns3="http://www.example.org/productType">
|
||||
<inventoryName>GINI_GOES10</inventoryName>
|
||||
<inventoryParameters>pluginName,sectorID,physicalElement,dataTime</inventoryParameters>
|
||||
<baseConstraints>
|
||||
<mapping key="creatingEntity">
|
||||
<constraint constraintValue="GOES-10(K)" constraintType="EQUALS"/>
|
||||
</mapping>
|
||||
<mapping key="pluginName">
|
||||
<constraint constraintValue="satellite" constraintType="EQUALS"/>
|
||||
</mapping>
|
||||
</baseConstraints>
|
||||
</NcInventoryDefinition>
|
|
@ -1,13 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
||||
<NcInventoryDefinition xmlns:ns2="group" xmlns:ns3="http://www.example.org/productType">
|
||||
<inventoryName>GINI_GOES7</inventoryName>
|
||||
<inventoryParameters>pluginName,sectorID,physicalElement,dataTime</inventoryParameters>
|
||||
<baseConstraints>
|
||||
<mapping key="creatingEntity">
|
||||
<constraint constraintValue="GOES-7(H)" constraintType="EQUALS"/>
|
||||
</mapping>
|
||||
<mapping key="pluginName">
|
||||
<constraint constraintValue="satellite" constraintType="EQUALS"/>
|
||||
</mapping>
|
||||
</baseConstraints>
|
||||
</NcInventoryDefinition>
|
|
@ -1,13 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
||||
<NcInventoryDefinition xmlns:ns2="group" xmlns:ns3="http://www.example.org/productType">
|
||||
<inventoryName>GINI_GOES8</inventoryName>
|
||||
<inventoryParameters>pluginName,sectorID,physicalElement,dataTime</inventoryParameters>
|
||||
<baseConstraints>
|
||||
<mapping key="creatingEntity">
|
||||
<constraint constraintValue="GOES-8(I)" constraintType="EQUALS"/>
|
||||
</mapping>
|
||||
<mapping key="pluginName">
|
||||
<constraint constraintValue="satellite" constraintType="EQUALS"/>
|
||||
</mapping>
|
||||
</baseConstraints>
|
||||
</NcInventoryDefinition>
|
|
@ -1,13 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
||||
<NcInventoryDefinition xmlns:ns2="group" xmlns:ns3="http://www.example.org/productType">
|
||||
<inventoryName>GINI_GOES9</inventoryName>
|
||||
<inventoryParameters>pluginName,sectorID,physicalElement,dataTime</inventoryParameters>
|
||||
<baseConstraints>
|
||||
<mapping key="creatingEntity">
|
||||
<constraint constraintValue="GOES-9(J)" constraintType="EQUALS"/>
|
||||
</mapping>
|
||||
<mapping key="pluginName">
|
||||
<constraint constraintValue="satellite" constraintType="EQUALS"/>
|
||||
</mapping>
|
||||
</baseConstraints>
|
||||
</NcInventoryDefinition>
|
|
@ -1,13 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
||||
<NcInventoryDefinition xmlns:ns2="group" xmlns:ns3="http://www.example.org/productType">
|
||||
<inventoryName>GINI_JERS</inventoryName>
|
||||
<inventoryParameters>pluginName,sectorID,physicalElement,dataTime</inventoryParameters>
|
||||
<baseConstraints>
|
||||
<mapping key="creatingEntity">
|
||||
<constraint constraintValue="JERS" constraintType="EQUALS"/>
|
||||
</mapping>
|
||||
<mapping key="pluginName">
|
||||
<constraint constraintValue="satellite" constraintType="EQUALS"/>
|
||||
</mapping>
|
||||
</baseConstraints>
|
||||
</NcInventoryDefinition>
|
|
@ -1,13 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
||||
<NcInventoryDefinition xmlns:ns2="group" xmlns:ns3="http://www.example.org/productType">
|
||||
<inventoryName>GINI_METEOSTAT</inventoryName>
|
||||
<inventoryParameters>pluginName,sectorID,physicalElement,dataTime</inventoryParameters>
|
||||
<baseConstraints>
|
||||
<mapping key="creatingEntity">
|
||||
<constraint constraintValue="METEOSAT" constraintType="EQUALS"/>
|
||||
</mapping>
|
||||
<mapping key="pluginName">
|
||||
<constraint constraintValue="satellite" constraintType="EQUALS"/>
|
||||
</mapping>
|
||||
</baseConstraints>
|
||||
</NcInventoryDefinition>
|
|
@ -1,13 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
||||
<NcInventoryDefinition xmlns:ns2="group" xmlns:ns3="http://www.example.org/productType">
|
||||
<inventoryName>GINI_NOAA16</inventoryName>
|
||||
<inventoryParameters>pluginName,sectorID,physicalElement,dataTime</inventoryParameters>
|
||||
<baseConstraints>
|
||||
<mapping key="creatingEntity">
|
||||
<constraint constraintValue="NOAA16" constraintType="EQUALS"/>
|
||||
</mapping>
|
||||
<mapping key="pluginName">
|
||||
<constraint constraintValue="satellite" constraintType="EQUALS"/>
|
||||
</mapping>
|
||||
</baseConstraints>
|
||||
</NcInventoryDefinition>
|
|
@ -1,13 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
||||
<NcInventoryDefinition xmlns:ns2="group" xmlns:ns3="http://www.example.org/productType">
|
||||
<inventoryName>GINI_NOAA17</inventoryName>
|
||||
<inventoryParameters>pluginName,sectorID,physicalElement,dataTime</inventoryParameters>
|
||||
<baseConstraints>
|
||||
<mapping key="creatingEntity">
|
||||
<constraint constraintValue="NOAA17" constraintType="EQUALS"/>
|
||||
</mapping>
|
||||
<mapping key="pluginName">
|
||||
<constraint constraintValue="satellite" constraintType="EQUALS"/>
|
||||
</mapping>
|
||||
</baseConstraints>
|
||||
</NcInventoryDefinition>
|
|
@ -1,13 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
||||
<NcInventoryDefinition xmlns:ns2="group" xmlns:ns3="http://www.example.org/productType">
|
||||
<inventoryName>GINI_NOAA18</inventoryName>
|
||||
<inventoryParameters>pluginName,sectorID,physicalElement,dataTime</inventoryParameters>
|
||||
<baseConstraints>
|
||||
<mapping key="creatingEntity">
|
||||
<constraint constraintValue="NOAA18" constraintType="EQUALS"/>
|
||||
</mapping>
|
||||
<mapping key="pluginName">
|
||||
<constraint constraintValue="satellite" constraintType="EQUALS"/>
|
||||
</mapping>
|
||||
</baseConstraints>
|
||||
</NcInventoryDefinition>
|
|
@ -1,13 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
||||
<NcInventoryDefinition xmlns:ns2="group" xmlns:ns3="http://www.example.org/productType">
|
||||
<inventoryName>GINI_NOAA19</inventoryName>
|
||||
<inventoryParameters>pluginName,sectorID,physicalElement,dataTime</inventoryParameters>
|
||||
<baseConstraints>
|
||||
<mapping key="creatingEntity">
|
||||
<constraint constraintValue="NOAA19" constraintType="EQUALS"/>
|
||||
</mapping>
|
||||
<mapping key="pluginName">
|
||||
<constraint constraintValue="satellite" constraintType="EQUALS"/>
|
||||
</mapping>
|
||||
</baseConstraints>
|
||||
</NcInventoryDefinition>
|
|
@ -1,13 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
||||
<NcInventoryDefinition xmlns:ns2="group" xmlns:ns3="http://www.example.org/productType">
|
||||
<inventoryName>GMS</inventoryName>
|
||||
<inventoryParameters>pluginName,areaName,resolution,imageType,dataTime</inventoryParameters>
|
||||
<baseConstraints>
|
||||
<mapping key="pluginName">
|
||||
<constraint constraintValue="mcidas" constraintType="EQUALS"/>
|
||||
</mapping>
|
||||
<mapping key="satelliteName">
|
||||
<constraint constraintValue="GMS" constraintType="EQUALS"/>
|
||||
</mapping>
|
||||
</baseConstraints>
|
||||
</NcInventoryDefinition>
|
|
@ -1,13 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
||||
<NcInventoryDefinition xmlns:ns2="group" xmlns:ns3="http://www.example.org/productType">
|
||||
<inventoryName>GOES10</inventoryName>
|
||||
<inventoryParameters>pluginName,areaName,resolution,imageType,dataTime</inventoryParameters>
|
||||
<baseConstraints>
|
||||
<mapping key="pluginName">
|
||||
<constraint constraintValue="mcidas" constraintType="EQUALS"/>
|
||||
</mapping>
|
||||
<mapping key="satelliteName">
|
||||
<constraint constraintValue="GOES10" constraintType="EQUALS"/>
|
||||
</mapping>
|
||||
</baseConstraints>
|
||||
</NcInventoryDefinition>
|
|
@ -1,13 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
||||
<NcInventoryDefinition xmlns:ns2="group" xmlns:ns3="http://www.example.org/productType">
|
||||
<inventoryName>GOES11</inventoryName>
|
||||
<inventoryParameters>pluginName,areaName,resolution,imageType,dataTime</inventoryParameters>
|
||||
<baseConstraints>
|
||||
<mapping key="pluginName">
|
||||
<constraint constraintValue="mcidas" constraintType="EQUALS"/>
|
||||
</mapping>
|
||||
<mapping key="satelliteName">
|
||||
<constraint constraintValue="GOES11" constraintType="EQUALS"/>
|
||||
</mapping>
|
||||
</baseConstraints>
|
||||
</NcInventoryDefinition>
|
|
@ -1,13 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
||||
<NcInventoryDefinition xmlns:ns2="group" xmlns:ns3="http://www.example.org/productType">
|
||||
<inventoryName>GOES12</inventoryName>
|
||||
<inventoryParameters>pluginName,areaName,resolution,imageType,dataTime</inventoryParameters>
|
||||
<baseConstraints>
|
||||
<mapping key="pluginName">
|
||||
<constraint constraintValue="mcidas" constraintType="EQUALS"/>
|
||||
</mapping>
|
||||
<mapping key="satelliteName">
|
||||
<constraint constraintValue="GOES12" constraintType="EQUALS"/>
|
||||
</mapping>
|
||||
</baseConstraints>
|
||||
</NcInventoryDefinition>
|
|
@ -1,13 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
||||
<NcInventoryDefinition xmlns:ns2="group" xmlns:ns3="http://www.example.org/productType">
|
||||
<inventoryName>GOES6</inventoryName>
|
||||
<inventoryParameters>pluginName,areaName,resolution,imageType,dataTime</inventoryParameters>
|
||||
<baseConstraints>
|
||||
<mapping key="pluginName">
|
||||
<constraint constraintValue="mcidas" constraintType="EQUALS"/>
|
||||
</mapping>
|
||||
<mapping key="satelliteName">
|
||||
<constraint constraintValue="GOES6" constraintType="EQUALS"/>
|
||||
</mapping>
|
||||
</baseConstraints>
|
||||
</NcInventoryDefinition>
|
|
@ -1,13 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
||||
<NcInventoryDefinition xmlns:ns2="group" xmlns:ns3="http://www.example.org/productType">
|
||||
<inventoryName>GOES7</inventoryName>
|
||||
<inventoryParameters>pluginName,areaName,resolution,imageType,dataTime</inventoryParameters>
|
||||
<baseConstraints>
|
||||
<mapping key="pluginName">
|
||||
<constraint constraintValue="mcidas" constraintType="EQUALS"/>
|
||||
</mapping>
|
||||
<mapping key="satelliteName">
|
||||
<constraint constraintValue="GOES7" constraintType="EQUALS"/>
|
||||
</mapping>
|
||||
</baseConstraints>
|
||||
</NcInventoryDefinition>
|
|
@ -1,13 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
||||
<NcInventoryDefinition xmlns:ns2="group" xmlns:ns3="http://www.example.org/productType">
|
||||
<inventoryName>GOES8</inventoryName>
|
||||
<inventoryParameters>pluginName,areaName,resolution,imageType,dataTime</inventoryParameters>
|
||||
<baseConstraints>
|
||||
<mapping key="pluginName">
|
||||
<constraint constraintValue="mcidas" constraintType="EQUALS"/>
|
||||
</mapping>
|
||||
<mapping key="satelliteName">
|
||||
<constraint constraintValue="GOES8" constraintType="EQUALS"/>
|
||||
</mapping>
|
||||
</baseConstraints>
|
||||
</NcInventoryDefinition>
|
|
@ -1,13 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
||||
<NcInventoryDefinition xmlns:ns2="group" xmlns:ns3="http://www.example.org/productType">
|
||||
<inventoryName>GOES9</inventoryName>
|
||||
<inventoryParameters>pluginName,areaName,resolution,imageType,dataTime</inventoryParameters>
|
||||
<baseConstraints>
|
||||
<mapping key="pluginName">
|
||||
<constraint constraintValue="mcidas" constraintType="EQUALS"/>
|
||||
</mapping>
|
||||
<mapping key="satelliteName">
|
||||
<constraint constraintValue="GOES9" constraintType="EQUALS"/>
|
||||
</mapping>
|
||||
</baseConstraints>
|
||||
</NcInventoryDefinition>
|
|
@ -1,13 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
||||
<NcInventoryDefinition xmlns:ns2="group" xmlns:ns3="http://www.example.org/productType">
|
||||
<inventoryName>HRCN</inventoryName>
|
||||
<inventoryParameters>pluginName,dataTime</inventoryParameters>
|
||||
<baseConstraints>
|
||||
<mapping key="reportType">
|
||||
<constraint constraintValue="TCM" constraintType="EQUALS"/>
|
||||
</mapping>
|
||||
<mapping key="pluginName">
|
||||
<constraint constraintValue="tcm" constraintType="EQUALS"/>
|
||||
</mapping>
|
||||
</baseConstraints>
|
||||
</NcInventoryDefinition>
|
|
@ -1,13 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
||||
<NcInventoryDefinition xmlns:ns2="group" xmlns:ns3="http://www.example.org/productType">
|
||||
<inventoryName>IDFT</inventoryName>
|
||||
<inventoryParameters>pluginName,dataTime</inventoryParameters>
|
||||
<baseConstraints>
|
||||
<mapping key="reportType">
|
||||
<constraint constraintValue="idft" constraintType="EQUALS"/>
|
||||
</mapping>
|
||||
<mapping key="pluginName">
|
||||
<constraint constraintValue="idft" constraintType="EQUALS"/>
|
||||
</mapping>
|
||||
</baseConstraints>
|
||||
</NcInventoryDefinition>
|
|
@ -1,13 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
||||
<NcInventoryDefinition xmlns:ns2="group" xmlns:ns3="http://www.example.org/productType">
|
||||
<inventoryName>ISIG</inventoryName>
|
||||
<inventoryParameters>pluginName,dataTime</inventoryParameters>
|
||||
<baseConstraints>
|
||||
<mapping key="reportType">
|
||||
<constraint constraintValue="intlsigmet" constraintType="EQUALS"/>
|
||||
</mapping>
|
||||
<mapping key="pluginName">
|
||||
<constraint constraintValue="intlsigmet" constraintType="EQUALS"/>
|
||||
</mapping>
|
||||
</baseConstraints>
|
||||
</NcInventoryDefinition>
|
|
@ -1,10 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
||||
<NcInventoryDefinition xmlns:ns2="group" xmlns:ns3="http://www.example.org/productType">
|
||||
<inventoryName>LTNG</inventoryName>
|
||||
<inventoryParameters>pluginName,dataTime</inventoryParameters>
|
||||
<baseConstraints>
|
||||
<mapping key="pluginName">
|
||||
<constraint constraintValue="binlightning" constraintType="EQUALS"/>
|
||||
</mapping>
|
||||
</baseConstraints>
|
||||
</NcInventoryDefinition>
|
|
@ -1,10 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
||||
<NcInventoryDefinition xmlns:ns2="group" xmlns:ns3="http://www.example.org/productType">
|
||||
<inventoryName>LTNG2</inventoryName>
|
||||
<inventoryParameters>pluginName,dataTime</inventoryParameters>
|
||||
<baseConstraints>
|
||||
<mapping key="pluginName">
|
||||
<constraint constraintValue="binlightning" constraintType="EQUALS"/>
|
||||
</mapping>
|
||||
</baseConstraints>
|
||||
</NcInventoryDefinition>
|
|
@ -1,13 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
||||
<NcInventoryDefinition xmlns:ns2="group" xmlns:ns3="http://www.example.org/productType">
|
||||
<inventoryName>METAR</inventoryName>
|
||||
<inventoryParameters>pluginName,dataTime</inventoryParameters>
|
||||
<baseConstraints>
|
||||
<mapping key="reportType">
|
||||
<constraint constraintValue="METAR" constraintType="EQUALS"/>
|
||||
</mapping>
|
||||
<mapping key="pluginName">
|
||||
<constraint constraintValue="obs" constraintType="EQUALS"/>
|
||||
</mapping>
|
||||
</baseConstraints>
|
||||
</NcInventoryDefinition>
|
|
@ -1,13 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
||||
<NcInventoryDefinition xmlns:ns2="group" xmlns:ns3="http://www.example.org/productType">
|
||||
<inventoryName>METEOSAT10</inventoryName>
|
||||
<inventoryParameters>pluginName,areaName,resolution,imageType,dataTime</inventoryParameters>
|
||||
<baseConstraints>
|
||||
<mapping key="pluginName">
|
||||
<constraint constraintValue="mcidas" constraintType="EQUALS"/>
|
||||
</mapping>
|
||||
<mapping key="satelliteName">
|
||||
<constraint constraintValue="METEOSAT10" constraintType="EQUALS"/>
|
||||
</mapping>
|
||||
</baseConstraints>
|
||||
</NcInventoryDefinition>
|
|
@ -1,13 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
||||
<NcInventoryDefinition xmlns:ns2="group" xmlns:ns3="http://www.example.org/productType">
|
||||
<inventoryName>METEOSAT3</inventoryName>
|
||||
<inventoryParameters>pluginName,areaName,resolution,imageType,dataTime</inventoryParameters>
|
||||
<baseConstraints>
|
||||
<mapping key="pluginName">
|
||||
<constraint constraintValue="mcidas" constraintType="EQUALS"/>
|
||||
</mapping>
|
||||
<mapping key="satelliteName">
|
||||
<constraint constraintValue="METEOSAT3" constraintType="EQUALS"/>
|
||||
</mapping>
|
||||
</baseConstraints>
|
||||
</NcInventoryDefinition>
|
|
@ -1,13 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
||||
<NcInventoryDefinition xmlns:ns2="group" xmlns:ns3="http://www.example.org/productType">
|
||||
<inventoryName>METEOSAT5</inventoryName>
|
||||
<inventoryParameters>pluginName,areaName,resolution,imageType,dataTime</inventoryParameters>
|
||||
<baseConstraints>
|
||||
<mapping key="pluginName">
|
||||
<constraint constraintValue="mcidas" constraintType="EQUALS"/>
|
||||
</mapping>
|
||||
<mapping key="satelliteName">
|
||||
<constraint constraintValue="METEOSAT5" constraintType="EQUALS"/>
|
||||
</mapping>
|
||||
</baseConstraints>
|
||||
</NcInventoryDefinition>
|
|
@ -1,13 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
||||
<NcInventoryDefinition xmlns:ns2="group" xmlns:ns3="http://www.example.org/productType">
|
||||
<inventoryName>METEOSAT6</inventoryName>
|
||||
<inventoryParameters>pluginName,areaName,resolution,imageType,dataTime</inventoryParameters>
|
||||
<baseConstraints>
|
||||
<mapping key="pluginName">
|
||||
<constraint constraintValue="mcidas" constraintType="EQUALS"/>
|
||||
</mapping>
|
||||
<mapping key="satelliteName">
|
||||
<constraint constraintValue="METEOSAT6" constraintType="EQUALS"/>
|
||||
</mapping>
|
||||
</baseConstraints>
|
||||
</NcInventoryDefinition>
|
|
@ -1,13 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
||||
<NcInventoryDefinition xmlns:ns2="group" xmlns:ns3="http://www.example.org/productType">
|
||||
<inventoryName>METEOSAT7</inventoryName>
|
||||
<inventoryParameters>pluginName,areaName,resolution,imageType,dataTime</inventoryParameters>
|
||||
<baseConstraints>
|
||||
<mapping key="pluginName">
|
||||
<constraint constraintValue="mcidas" constraintType="EQUALS"/>
|
||||
</mapping>
|
||||
<mapping key="satelliteName">
|
||||
<constraint constraintValue="METEOSAT7" constraintType="EQUALS"/>
|
||||
</mapping>
|
||||
</baseConstraints>
|
||||
</NcInventoryDefinition>
|
|
@ -1,13 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
||||
<NcInventoryDefinition xmlns:ns2="group" xmlns:ns3="http://www.example.org/productType">
|
||||
<inventoryName>METEOSAT8</inventoryName>
|
||||
<inventoryParameters>pluginName,areaName,resolution,imageType,dataTime</inventoryParameters>
|
||||
<baseConstraints>
|
||||
<mapping key="pluginName">
|
||||
<constraint constraintValue="mcidas" constraintType="EQUALS"/>
|
||||
</mapping>
|
||||
<mapping key="satelliteName">
|
||||
<constraint constraintValue="METEOSAT8" constraintType="EQUALS"/>
|
||||
</mapping>
|
||||
</baseConstraints>
|
||||
</NcInventoryDefinition>
|
|
@ -1,13 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
||||
<NcInventoryDefinition xmlns:ns2="group" xmlns:ns3="http://www.example.org/productType">
|
||||
<inventoryName>MTS</inventoryName>
|
||||
<inventoryParameters>pluginName,areaName,resolution,imageType,dataTime</inventoryParameters>
|
||||
<baseConstraints>
|
||||
<mapping key="pluginName">
|
||||
<constraint constraintValue="mcidas" constraintType="EQUALS"/>
|
||||
</mapping>
|
||||
<mapping key="satelliteName">
|
||||
<constraint constraintValue="MTS" constraintType="EQUALS"/>
|
||||
</mapping>
|
||||
</baseConstraints>
|
||||
</NcInventoryDefinition>
|
|
@ -1,13 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
||||
<NcInventoryDefinition xmlns:ns2="group" xmlns:ns3="http://www.example.org/productType">
|
||||
<inventoryName>NCON</inventoryName>
|
||||
<inventoryParameters>pluginName,dataTime</inventoryParameters>
|
||||
<baseConstraints>
|
||||
<mapping key="reportType">
|
||||
<constraint constraintValue="nonconvsigmet" constraintType="EQUALS"/>
|
||||
</mapping>
|
||||
<mapping key="pluginName">
|
||||
<constraint constraintValue="nonconvsigmet" constraintType="EQUALS"/>
|
||||
</mapping>
|
||||
</baseConstraints>
|
||||
</NcInventoryDefinition>
|
|
@ -1,13 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
||||
<NcInventoryDefinition xmlns:ns2="group" xmlns:ns3="http://www.example.org/productType">
|
||||
<inventoryName>OSCT</inventoryName>
|
||||
<inventoryParameters>pluginName,dataTime</inventoryParameters>
|
||||
<baseConstraints>
|
||||
<mapping key="reportType">
|
||||
<constraint constraintValue="oscat%" constraintType="LIKE"/>
|
||||
</mapping>
|
||||
<mapping key="pluginName">
|
||||
<constraint constraintValue="ncscat" constraintType="EQUALS"/>
|
||||
</mapping>
|
||||
</baseConstraints>
|
||||
</NcInventoryDefinition>
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Add table
Reference in a new issue