From 5238e094188decb34d3b2f88109553029686908a Mon Sep 17 00:00:00 2001 From: AlysonStahl-NOAA Date: Fri, 11 Oct 2024 09:53:16 -0600 Subject: [PATCH 1/2] swapped wgrib.c with version 1.8.5 --- wgrib/wgrib.c | 20676 ++++++++++++++++++++++++------------------------ 1 file changed, 10339 insertions(+), 10337 deletions(-) diff --git a/wgrib/wgrib.c b/wgrib/wgrib.c index b54049fd..1f63df38 100644 --- a/wgrib/wgrib.c +++ b/wgrib/wgrib.c @@ -1,59 +1,58 @@ -/** @file - * version 1.2.1 of grib headers w. ebisuzaki - * 1.2.2 added access to spectral reference value l. kornblueh - */ - #include #include #include #include #include #include +/* + * version 1.2.1 of grib headers w. ebisuzaki + * 1.2.2 added access to spectral reference value l. kornblueh + */ #ifndef INT2 #define INT2(a,b) ((1-(int) ((unsigned) (a & 0x80) >> 6)) * (int) (((a & 0x7f) << 8) + b)) #endif -#define BDS_LEN(bds) (ec_large_grib ? len_ec_bds : ((int) ((bds[0]<<16)+(bds[1]<<8)+bds[2])) ) +#define BDS_LEN(bds) (ec_large_grib ? len_ec_bds : ((int) ((bds[0]<<16)+(bds[1]<<8)+bds[2])) ) -#define BDS_Flag(bds) (bds[3]) +#define BDS_Flag(bds) (bds[3]) -#define BDS_Grid(bds) ((bds[3] & 128) == 0) -#define BDS_Harmonic(bds) (bds[3] & 128) +#define BDS_Grid(bds) ((bds[3] & 128) == 0) +#define BDS_Harmonic(bds) (bds[3] & 128) -#define BDS_Packing(bds) ((bds[3] & 64) != 0) -#define BDS_SimplePacking(bds) ((bds[3] & 64) == 0) -#define BDS_ComplexPacking(bds) ((bds[3] & 64) != 0) +#define BDS_Packing(bds) ((bds[3] & 64) != 0) +#define BDS_SimplePacking(bds) ((bds[3] & 64) == 0) +#define BDS_ComplexPacking(bds) ((bds[3] & 64) != 0) -#define BDS_OriginalType(bds) ((bds[3] & 32) != 0) -#define BDS_OriginalFloat(bds) ((bds[3] & 32) == 0) -#define BDS_OriginalInt(bds) ((bds[3] & 32) != 0) +#define BDS_OriginalType(bds) ((bds[3] & 32) != 0) +#define BDS_OriginalFloat(bds) ((bds[3] & 32) == 0) +#define BDS_OriginalInt(bds) ((bds[3] & 32) != 0) #define BDS_MoreFlags(bds) ((bds[3] & 16) != 0) -#define BDS_UnusedBits(bds) ((int) (bds[3] & 15)) +#define BDS_UnusedBits(bds) ((int) (bds[3] & 15)) -#define BDS_BinScale(bds) INT2(bds[4],bds[5]) +#define BDS_BinScale(bds) INT2(bds[4],bds[5]) -#define BDS_RefValue(bds) (ibm2flt(bds+6)) -#define BDS_NumBits(bds) ((int) bds[10]) +#define BDS_RefValue(bds) (ibm2flt(bds+6)) +#define BDS_NumBits(bds) ((int) bds[10]) #define BDS_Harmonic_RefValue(bds) (ibm2flt(bds+11)) #define BDS_DataStart(bds) ((int) (11 + BDS_MoreFlags(bds)*3)) -#define BDS_P1(bds) (bds[16] * 256 + bds[17]) -#define BDS_P2(bds) (bds[18] * 256 + bds[19]) +#define BDS_P1(bds) (bds[16] * 256 + bds[17]) +#define BDS_P2(bds) (bds[18] * 256 + bds[19]) /* undefined value -- if bitmap */ -#define UNDEFINED 9.999e20 +#define UNDEFINED 9.999e20 /* version 1.2 of grib headers w. ebisuzaki */ -#define BMS_LEN(bms) ((bms) == NULL ? 0 : (bms[0]<<16)+(bms[1]<<8)+bms[2]) -#define BMS_UnusedBits(bms) ((bms) == NULL ? 0 : bms[3]) -#define BMS_StdMap(bms) ((bms) == NULL ? 0 : ((bms[4]<<8) + bms[5])) -#define BMS_bitmap(bms) ((bms) == NULL ? NULL : (bms)+6) -#define BMS_nxny(bms) ((((bms) == NULL) || BMS_StdMap(bms)) \ - ? 0 : (BMS_LEN(bms)*8 - 48 - BMS_UnusedBits(bms))) +#define BMS_LEN(bms) ((bms) == NULL ? 0 : (bms[0]<<16)+(bms[1]<<8)+bms[2]) +#define BMS_UnusedBits(bms) ((bms) == NULL ? 0 : bms[3]) +#define BMS_StdMap(bms) ((bms) == NULL ? 0 : ((bms[4]<<8) + bms[5])) +#define BMS_bitmap(bms) ((bms) == NULL ? NULL : (bms)+6) +#define BMS_nxny(bms) ((((bms) == NULL) || BMS_StdMap(bms)) \ + ? 0 : (BMS_LEN(bms)*8 - 48 - BMS_UnusedBits(bms))) /* cnames_file.c */ /* search order for parameter names @@ -80,17 +79,17 @@ int setup_user_table(int center, int subcenter, int ptable); struct ParmTable { - /* char *name, *comment; */ - char *name, *comment; + /* char *name, *comment; */ + char *name, *comment; }; /* version 1.4.5 of grib headers w. ebisuzaki */ /* this version is incomplete */ /* 5/00 - dx/dy or di/dj controlled by bit 1 of resolution byte */ /* 8/00 - dx/dy or di/dj for polar and lambert not controlled by res. byte */ /* Added headers for the triangular grid of the gme model of DWD - Helmut P. Frank, 13.09.2001 */ + Helmut P. Frank, 13.09.2001 */ /* Clean up of triangular grid properties access and added spectral information - Luis Kornblueh, 27.03.2002 */ + Luis Kornblueh, 27.03.2002 */ /* 8/08 - dx/dy (polar,lambert) controlled by bit 1 of resolution byte */ /* 5/11 Paul Schou: fixed GDS_Lambert_LonSP(gds) */ /* 6/11 Jeffery S. Smith Albers equal area projection */ @@ -115,95 +114,95 @@ struct ParmTable { #endif -#define GDS_Len1(gds) (gds[0]) -#define GDS_Len2(gds) (gds[1]) -#define GDS_Len3(gds) (gds[2]) -#define GDS_LEN(gds) ((int) ((gds[0]<<16)+(gds[1]<<8)+gds[2])) - -#define GDS_NV(gds) (gds[3]) -#define GDS_DataType(gds) (gds[5]) - -#define GDS_LatLon(gds) (gds[5] == 0) -#define GDS_Mercator(gds) (gds[5] == 1) -#define GDS_Gnomonic(gds) (gds[5] == 2) -#define GDS_Lambert(gds) (gds[5] == 3) -#define GDS_Gaussian(gds) (gds[5] == 4) -#define GDS_Polar(gds) (gds[5] == 5) -#define GDS_Albers(gds) (gds[5] == 8) -#define GDS_RotLL(gds) (gds[5] == 10) -#define GDS_Harmonic(gds) (gds[5] == 50) -#define GDS_Triangular(gds) (gds[5] == 192) -#define GDS_ssEgrid(gds) (gds[5] == 201) /* semi-staggered E grid */ -#define GDS_fEgrid(gds) (gds[5] == 202) /* filled E grid */ -#define GDS_ss2dEgrid(gds) (gds[5] == 203) /* semi-staggered E grid 2 d*/ +#define GDS_Len1(gds) (gds[0]) +#define GDS_Len2(gds) (gds[1]) +#define GDS_Len3(gds) (gds[2]) +#define GDS_LEN(gds) ((int) ((gds[0]<<16)+(gds[1]<<8)+gds[2])) + +#define GDS_NV(gds) (gds[3]) +#define GDS_DataType(gds) (gds[5]) + +#define GDS_LatLon(gds) (gds[5] == 0) +#define GDS_Mercator(gds) (gds[5] == 1) +#define GDS_Gnomonic(gds) (gds[5] == 2) +#define GDS_Lambert(gds) (gds[5] == 3) +#define GDS_Gaussian(gds) (gds[5] == 4) +#define GDS_Polar(gds) (gds[5] == 5) +#define GDS_Albers(gds) (gds[5] == 8) +#define GDS_RotLL(gds) (gds[5] == 10) +#define GDS_Harmonic(gds) (gds[5] == 50) +#define GDS_Triangular(gds) (gds[5] == 192) +#define GDS_ssEgrid(gds) (gds[5] == 201) /* semi-staggered E grid */ +#define GDS_fEgrid(gds) (gds[5] == 202) /* filled E grid */ +#define GDS_ss2dEgrid(gds) (gds[5] == 203) /* semi-staggered E grid 2 d*/ #define GDS_ss2dBgrid(gds) (gds[5] == 205) /* semi-staggered B grid 2 d*/ -#define GDS_has_dy(mode) ((mode) & 128) -#define GDS_LatLon_nx(gds) ((int) ((gds[6] << 8) + gds[7])) -#define GDS_LatLon_ny(gds) ((int) ((gds[8] << 8) + gds[9])) -#define GDS_LatLon_La1(gds) INT3(gds[10],gds[11],gds[12]) -#define GDS_LatLon_Lo1(gds) INT3(gds[13],gds[14],gds[15]) -#define GDS_LatLon_mode(gds) (gds[16]) -#define GDS_LatLon_La2(gds) INT3(gds[17],gds[18],gds[19]) -#define GDS_LatLon_Lo2(gds) INT3(gds[20],gds[21],gds[22]) +#define GDS_has_dy(mode) ((mode) & 128) +#define GDS_LatLon_nx(gds) ((int) ((gds[6] << 8) + gds[7])) +#define GDS_LatLon_ny(gds) ((int) ((gds[8] << 8) + gds[9])) +#define GDS_LatLon_La1(gds) INT3(gds[10],gds[11],gds[12]) +#define GDS_LatLon_Lo1(gds) INT3(gds[13],gds[14],gds[15]) +#define GDS_LatLon_mode(gds) (gds[16]) +#define GDS_LatLon_La2(gds) INT3(gds[17],gds[18],gds[19]) +#define GDS_LatLon_Lo2(gds) INT3(gds[20],gds[21],gds[22]) #define GDS_LatLon_dx(gds) (gds[16] & 128 ? INT2(gds[23],gds[24]) : 0) #define GDS_LatLon_dy(gds) (gds[16] & 128 ? INT2(gds[25],gds[26]) : 0) #define GDS_Gaussian_nlat(gds) ((gds[25]<<8)+gds[26]) -#define GDS_LatLon_scan(gds) (gds[27]) - -#define GDS_Polar_nx(gds) (gds[16] & 128 ? ((gds[6] << 8) + gds[7]) : 0) -#define GDS_Polar_ny(gds) (gds[16] & 128 ? ((gds[8] << 8) + gds[9]) : 0) -#define GDS_Polar_La1(gds) INT3(gds[10],gds[11],gds[12]) -#define GDS_Polar_Lo1(gds) INT3(gds[13],gds[14],gds[15]) -#define GDS_Polar_mode(gds) (gds[16]) -#define GDS_Polar_Lov(gds) INT3(gds[17],gds[18],gds[19]) -#define GDS_Polar_scan(gds) (gds[27]) -#define GDS_Polar_Dx(gds) INT3(gds[20], gds[21], gds[22]) -#define GDS_Polar_Dy(gds) INT3(gds[23], gds[24], gds[25]) -#define GDS_Polar_pole(gds) ((gds[26] & 128) == 128) - -#define GDS_Lambert_nx(gds) ((gds[6] << 8) + gds[7]) -#define GDS_Lambert_ny(gds) ((gds[8] << 8) + gds[9]) -#define GDS_Lambert_La1(gds) INT3(gds[10],gds[11],gds[12]) -#define GDS_Lambert_Lo1(gds) INT3(gds[13],gds[14],gds[15]) -#define GDS_Lambert_mode(gds) (gds[16]) -#define GDS_Lambert_Lov(gds) INT3(gds[17],gds[18],gds[19]) -#define GDS_Lambert_dx(gds) INT3(gds[20],gds[21],gds[22]) -#define GDS_Lambert_dy(gds) INT3(gds[23],gds[24],gds[25]) -#define GDS_Lambert_NP(gds) ((gds[26] & 128) == 0) +#define GDS_LatLon_scan(gds) (gds[27]) + +#define GDS_Polar_nx(gds) (gds[16] & 128 ? ((gds[6] << 8) + gds[7]) : 0) +#define GDS_Polar_ny(gds) (gds[16] & 128 ? ((gds[8] << 8) + gds[9]) : 0) +#define GDS_Polar_La1(gds) INT3(gds[10],gds[11],gds[12]) +#define GDS_Polar_Lo1(gds) INT3(gds[13],gds[14],gds[15]) +#define GDS_Polar_mode(gds) (gds[16]) +#define GDS_Polar_Lov(gds) INT3(gds[17],gds[18],gds[19]) +#define GDS_Polar_scan(gds) (gds[27]) +#define GDS_Polar_Dx(gds) INT3(gds[20], gds[21], gds[22]) +#define GDS_Polar_Dy(gds) INT3(gds[23], gds[24], gds[25]) +#define GDS_Polar_pole(gds) ((gds[26] & 128) == 128) + +#define GDS_Lambert_nx(gds) ((gds[6] << 8) + gds[7]) +#define GDS_Lambert_ny(gds) ((gds[8] << 8) + gds[9]) +#define GDS_Lambert_La1(gds) INT3(gds[10],gds[11],gds[12]) +#define GDS_Lambert_Lo1(gds) INT3(gds[13],gds[14],gds[15]) +#define GDS_Lambert_mode(gds) (gds[16]) +#define GDS_Lambert_Lov(gds) INT3(gds[17],gds[18],gds[19]) +#define GDS_Lambert_dx(gds) INT3(gds[20],gds[21],gds[22]) +#define GDS_Lambert_dy(gds) INT3(gds[23],gds[24],gds[25]) +#define GDS_Lambert_NP(gds) ((gds[26] & 128) == 0) #define GDS_Lambert_scan(gds) (gds[27]) -#define GDS_Lambert_Latin1(gds) INT3(gds[28],gds[29],gds[30]) -#define GDS_Lambert_Latin2(gds) INT3(gds[31],gds[32],gds[33]) -#define GDS_Lambert_LatSP(gds) INT3(gds[34],gds[35],gds[36]) +#define GDS_Lambert_Latin1(gds) INT3(gds[28],gds[29],gds[30]) +#define GDS_Lambert_Latin2(gds) INT3(gds[31],gds[32],gds[33]) +#define GDS_Lambert_LatSP(gds) INT3(gds[34],gds[35],gds[36]) /* bug found by Paul Schou 5/3/2011 - #define GDS_Lambert_LonSP(gds) INT3(gds[37],gds[37],gds[37]) + #define GDS_Lambert_LonSP(gds) INT3(gds[37],gds[37],gds[37]) */ -#define GDS_Lambert_LonSP(gds) INT3(gds[37],gds[38],gds[39]) +#define GDS_Lambert_LonSP(gds) INT3(gds[37],gds[38],gds[39]) -#define GDS_ssEgrid_n(gds) UINT2(gds[6],gds[7]) +#define GDS_ssEgrid_n(gds) UINT2(gds[6],gds[7]) #define GDS_ssEgrid_n_dum(gds) UINT2(gds[8],gds[9]) -#define GDS_ssEgrid_La1(gds) INT3(gds[10],gds[11],gds[12]) -#define GDS_ssEgrid_Lo1(gds) INT3(gds[13],gds[14],gds[15]) -#define GDS_ssEgrid_mode(gds) (gds[16]) -#define GDS_ssEgrid_La2(gds) UINT3(gds[17],gds[18],gds[19]) -#define GDS_ssEgrid_Lo2(gds) UINT3(gds[20],gds[21],gds[22]) -#define GDS_ssEgrid_di(gds) (gds[16] & 128 ? INT2(gds[23],gds[24]) : 0) -#define GDS_ssEgrid_dj(gds) (gds[16] & 128 ? INT2(gds[25],gds[26]) : 0) -#define GDS_ssEgrid_scan(gds) (gds[27]) - -#define GDS_fEgrid_n(gds) UINT2(gds[6],gds[7]) +#define GDS_ssEgrid_La1(gds) INT3(gds[10],gds[11],gds[12]) +#define GDS_ssEgrid_Lo1(gds) INT3(gds[13],gds[14],gds[15]) +#define GDS_ssEgrid_mode(gds) (gds[16]) +#define GDS_ssEgrid_La2(gds) UINT3(gds[17],gds[18],gds[19]) +#define GDS_ssEgrid_Lo2(gds) UINT3(gds[20],gds[21],gds[22]) +#define GDS_ssEgrid_di(gds) (gds[16] & 128 ? INT2(gds[23],gds[24]) : 0) +#define GDS_ssEgrid_dj(gds) (gds[16] & 128 ? INT2(gds[25],gds[26]) : 0) +#define GDS_ssEgrid_scan(gds) (gds[27]) + +#define GDS_fEgrid_n(gds) UINT2(gds[6],gds[7]) #define GDS_fEgrid_n_dum(gds) UINT2(gds[8],gds[9]) -#define GDS_fEgrid_La1(gds) INT3(gds[10],gds[11],gds[12]) -#define GDS_fEgrid_Lo1(gds) INT3(gds[13],gds[14],gds[15]) -#define GDS_fEgrid_mode(gds) (gds[16]) -#define GDS_fEgrid_La2(gds) UINT3(gds[17],gds[18],gds[19]) -#define GDS_fEgrid_Lo2(gds) UINT3(gds[20],gds[21],gds[22]) -#define GDS_fEgrid_di(gds) (gds[16] & 128 ? INT2(gds[23],gds[24]) : 0) -#define GDS_fEgrid_dj(gds) (gds[16] & 128 ? INT2(gds[25],gds[26]) : 0) -#define GDS_fEgrid_scan(gds) (gds[27]) +#define GDS_fEgrid_La1(gds) INT3(gds[10],gds[11],gds[12]) +#define GDS_fEgrid_Lo1(gds) INT3(gds[13],gds[14],gds[15]) +#define GDS_fEgrid_mode(gds) (gds[16]) +#define GDS_fEgrid_La2(gds) UINT3(gds[17],gds[18],gds[19]) +#define GDS_fEgrid_Lo2(gds) UINT3(gds[20],gds[21],gds[22]) +#define GDS_fEgrid_di(gds) (gds[16] & 128 ? INT2(gds[23],gds[24]) : 0) +#define GDS_fEgrid_dj(gds) (gds[16] & 128 ? INT2(gds[25],gds[26]) : 0) +#define GDS_fEgrid_scan(gds) (gds[27]) #define GDS_ss2dEgrid_nx(gds) UINT2(gds[6],gds[7]) #define GDS_ss2dEgrid_ny(gds) UINT2(gds[8],gds[9]) @@ -225,67 +224,67 @@ struct ParmTable { #define GDS_ss2dBgrid_Lo2(gds) INT3(gds[20],gds[21],gds[22]) #define GDS_ss2dBgrid_di(gds) (gds[16] & 128 ? INT2(gds[23],gds[24]) : 0) #define GDS_ss2dBgrid_dj(gds) (gds[16] & 128 ? INT2(gds[25],gds[26]) : 0) -#define GDS_ss2dBgrid_scan(gds) (gds[27]) - - -#define GDS_Merc_nx(gds) UINT2(gds[6],gds[7]) -#define GDS_Merc_ny(gds) UINT2(gds[8],gds[9]) -#define GDS_Merc_La1(gds) INT3(gds[10],gds[11],gds[12]) -#define GDS_Merc_Lo1(gds) INT3(gds[13],gds[14],gds[15]) -#define GDS_Merc_mode(gds) (gds[16]) -#define GDS_Merc_La2(gds) INT3(gds[17],gds[18],gds[19]) -#define GDS_Merc_Lo2(gds) INT3(gds[20],gds[21],gds[22]) -#define GDS_Merc_Latin(gds) INT3(gds[23],gds[24],gds[25]) -#define GDS_Merc_scan(gds) (gds[27]) +#define GDS_ss2dBgrid_scan(gds) (gds[27]) + + +#define GDS_Merc_nx(gds) UINT2(gds[6],gds[7]) +#define GDS_Merc_ny(gds) UINT2(gds[8],gds[9]) +#define GDS_Merc_La1(gds) INT3(gds[10],gds[11],gds[12]) +#define GDS_Merc_Lo1(gds) INT3(gds[13],gds[14],gds[15]) +#define GDS_Merc_mode(gds) (gds[16]) +#define GDS_Merc_La2(gds) INT3(gds[17],gds[18],gds[19]) +#define GDS_Merc_Lo2(gds) INT3(gds[20],gds[21],gds[22]) +#define GDS_Merc_Latin(gds) INT3(gds[23],gds[24],gds[25]) +#define GDS_Merc_scan(gds) (gds[27]) #define GDS_Merc_dx(gds) (gds[16] & 128 ? INT3(gds[28],gds[29],gds[30]) : 0) #define GDS_Merc_dy(gds) (gds[16] & 128 ? INT3(gds[31],gds[32],gds[33]) : 0) /* rotated Lat-lon grid */ -#define GDS_RotLL_nx(gds) UINT2(gds[6],gds[7]) -#define GDS_RotLL_ny(gds) UINT2(gds[8],gds[9]) -#define GDS_RotLL_La1(gds) INT3(gds[10],gds[11],gds[12]) -#define GDS_RotLL_Lo1(gds) INT3(gds[13],gds[14],gds[15]) -#define GDS_RotLL_mode(gds) (gds[16]) -#define GDS_RotLL_La2(gds) INT3(gds[17],gds[18],gds[19]) -#define GDS_RotLL_Lo2(gds) INT3(gds[20],gds[21],gds[22]) +#define GDS_RotLL_nx(gds) UINT2(gds[6],gds[7]) +#define GDS_RotLL_ny(gds) UINT2(gds[8],gds[9]) +#define GDS_RotLL_La1(gds) INT3(gds[10],gds[11],gds[12]) +#define GDS_RotLL_Lo1(gds) INT3(gds[13],gds[14],gds[15]) +#define GDS_RotLL_mode(gds) (gds[16]) +#define GDS_RotLL_La2(gds) INT3(gds[17],gds[18],gds[19]) +#define GDS_RotLL_Lo2(gds) INT3(gds[20],gds[21],gds[22]) #define GDS_RotLL_dx(gds) (gds[16] & 128 ? INT2(gds[23],gds[24]) : 0) #define GDS_RotLL_dy(gds) (gds[16] & 128 ? INT2(gds[25],gds[26]) : 0) -#define GDS_RotLL_scan(gds) (gds[27]) -#define GDS_RotLL_LaSP(gds) INT3(gds[32],gds[33],gds[34]) -#define GDS_RotLL_LoSP(gds) INT3(gds[35],gds[36],gds[37]) -#define GDS_RotLL_RotAng(gds) ibm2flt(&(gds[38])) +#define GDS_RotLL_scan(gds) (gds[27]) +#define GDS_RotLL_LaSP(gds) INT3(gds[32],gds[33],gds[34]) +#define GDS_RotLL_LoSP(gds) INT3(gds[35],gds[36],gds[37]) +#define GDS_RotLL_RotAng(gds) ibm2flt(&(gds[38])) /* Triangular grid of DWD */ -#define GDS_Triangular_ni2(gds) INT2(gds[6],gds[7]) -#define GDS_Triangular_ni3(gds) INT2(gds[8],gds[9]) -#define GDS_Triangular_ni(gds) INT3(gds[13],gds[14],gds[15]) +#define GDS_Triangular_ni2(gds) INT2(gds[6],gds[7]) +#define GDS_Triangular_ni3(gds) INT2(gds[8],gds[9]) +#define GDS_Triangular_ni(gds) INT3(gds[13],gds[14],gds[15]) #define GDS_Triangular_nd(gds) INT3(gds[10],gds[11],gds[12]) /* Harmonics data */ -#define GDS_Harmonic_nj(gds) ((int) ((gds[6] << 8) + gds[7])) -#define GDS_Harmonic_nk(gds) ((int) ((gds[8] << 8) + gds[9])) -#define GDS_Harmonic_nm(gds) ((int) ((gds[10] << 8) + gds[11])) +#define GDS_Harmonic_nj(gds) ((int) ((gds[6] << 8) + gds[7])) +#define GDS_Harmonic_nk(gds) ((int) ((gds[8] << 8) + gds[9])) +#define GDS_Harmonic_nm(gds) ((int) ((gds[10] << 8) + gds[11])) #define GDS_Harmonic_type(gds) (gds[12]) #define GDS_Harmonic_mode(gds) (gds[13]) /* index of NV and PV */ -#define GDS_PV(gds) ((gds[3] == 0) ? -1 : (int) gds[4] - 1) -#define GDS_PL(gds) ((gds[4] == 255) ? -1 : (int) gds[3] * 4 + (int) gds[4] - 1) +#define GDS_PV(gds) ((gds[3] == 0) ? -1 : (int) gds[4] - 1) +#define GDS_PL(gds) ((gds[4] == 255) ? -1 : (int) gds[3] * 4 + (int) gds[4] - 1) enum Def_NCEP_Table {rean, opn, rean_nowarn, opn_nowarn}; -unsigned char *seek_grib(FILE *file, unsigned long *pos, long *len_grib, - unsigned char *buffer, unsigned int buf_len); +unsigned char *seek_grib(FILE *file, unsigned long *pos, long *len_grib, + unsigned char *buffer, unsigned int buf_len); int read_grib(FILE *file, long pos, long len_grib, unsigned char *buffer); long echack(FILE *file, long pos, long len_grib); double ibm2flt(unsigned char *ibm); - + void BDS_unpack(float *flt, unsigned char *bds, unsigned char *bitmap, - int n_bits, int n, double ref, double scale); + int n_bits, int n, double ref, double scale); int BDS_NValues(unsigned char *bds); @@ -297,14 +296,14 @@ int wrtieee(float *array, int n, int header, FILE *output); int wrtieee_header(unsigned int n, FILE *output); void levels(int, int, int, int verbose); - + void PDStimes(int time_range, int p1, int p2, int time_unit); int missing_points(unsigned char *bitmap, int n); void EC_ext(unsigned char *pds, char *prefix, char *suffix, int verbose); -int GDS_grid(unsigned char *gds, unsigned char *bds, int *nx, int *ny, +int GDS_grid(unsigned char *gds, unsigned char *bds, int *nx, int *ny, long int *nxny); void GDS_prt_thin_lon(unsigned char *gds); @@ -339,80 +338,80 @@ void ensemble(unsigned char *pds, int mode); #endif #define __LEN24(pds) ((pds) == NULL ? 0 : (int) ((pds[0]<<16)+(pds[1]<<8)+pds[2])) -#define PDS_Len1(pds) (pds[0]) -#define PDS_Len2(pds) (pds[1]) -#define PDS_Len3(pds) (pds[2]) -#define PDS_LEN(pds) ((int) ((pds[0]<<16)+(pds[1]<<8)+pds[2])) -#define PDS_Vsn(pds) (pds[3]) -#define PDS_Center(pds) (pds[4]) -#define PDS_Model(pds) (pds[5]) -#define PDS_Grid(pds) (pds[6]) -#define PDS_HAS_GDS(pds) ((pds[7] & 128) != 0) -#define PDS_HAS_BMS(pds) ((pds[7] & 64) != 0) -#define PDS_PARAM(pds) (pds[8]) -#define PDS_L_TYPE(pds) (pds[9]) -#define PDS_LEVEL1(pds) (pds[10]) -#define PDS_LEVEL2(pds) (pds[11]) - -#define PDS_KPDS5(pds) (pds[8]) -#define PDS_KPDS6(pds) (pds[9]) -#define PDS_KPDS7(pds) ((int) ((pds[10]<<8) + pds[11])) +#define PDS_Len1(pds) (pds[0]) +#define PDS_Len2(pds) (pds[1]) +#define PDS_Len3(pds) (pds[2]) +#define PDS_LEN(pds) ((int) ((pds[0]<<16)+(pds[1]<<8)+pds[2])) +#define PDS_Vsn(pds) (pds[3]) +#define PDS_Center(pds) (pds[4]) +#define PDS_Model(pds) (pds[5]) +#define PDS_Grid(pds) (pds[6]) +#define PDS_HAS_GDS(pds) ((pds[7] & 128) != 0) +#define PDS_HAS_BMS(pds) ((pds[7] & 64) != 0) +#define PDS_PARAM(pds) (pds[8]) +#define PDS_L_TYPE(pds) (pds[9]) +#define PDS_LEVEL1(pds) (pds[10]) +#define PDS_LEVEL2(pds) (pds[11]) + +#define PDS_KPDS5(pds) (pds[8]) +#define PDS_KPDS6(pds) (pds[9]) +#define PDS_KPDS7(pds) ((int) ((pds[10]<<8) + pds[11])) /* this requires a 32-bit default integer machine */ -#define PDS_Field(pds) ((pds[8]<<24)+(pds[9]<<16)+(pds[10]<<8)+pds[11]) - -#define PDS_Year(pds) (pds[12]) -#define PDS_Month(pds) (pds[13]) -#define PDS_Day(pds) (pds[14]) -#define PDS_Hour(pds) (pds[15]) -#define PDS_Minute(pds) (pds[16]) -#define PDS_ForecastTimeUnit(pds) (pds[17]) -#define PDS_P1(pds) (pds[18]) -#define PDS_P2(pds) (pds[19]) -#define PDS_TimeRange(pds) (pds[20]) -#define PDS_NumAve(pds) ((int) ((pds[21]<<8)+pds[22])) -#define PDS_NumMissing(pds) (pds[23]) -#define PDS_Century(pds) (pds[24]) -#define PDS_Subcenter(pds) (pds[25]) -#define PDS_DecimalScale(pds) INT2(pds[26],pds[27]) +#define PDS_Field(pds) ((pds[8]<<24)+(pds[9]<<16)+(pds[10]<<8)+pds[11]) + +#define PDS_Year(pds) (pds[12]) +#define PDS_Month(pds) (pds[13]) +#define PDS_Day(pds) (pds[14]) +#define PDS_Hour(pds) (pds[15]) +#define PDS_Minute(pds) (pds[16]) +#define PDS_ForecastTimeUnit(pds) (pds[17]) +#define PDS_P1(pds) (pds[18]) +#define PDS_P2(pds) (pds[19]) +#define PDS_TimeRange(pds) (pds[20]) +#define PDS_NumAve(pds) ((int) ((pds[21]<<8)+pds[22])) +#define PDS_NumMissing(pds) (pds[23]) +#define PDS_Century(pds) (pds[24]) +#define PDS_Subcenter(pds) (pds[25]) +#define PDS_DecimalScale(pds) INT2(pds[26],pds[27]) /* old #define PDS_Year4(pds) (pds[12] + 100*(pds[24] - (pds[12] != 0))) */ #define PDS_Year4(pds) (pds[12] + 100*(pds[24] - 1)) /* various centers */ -#define NMC 7 -#define JMA 34 -#define ECMWF 98 -#define DWD 78 -#define CMC 54 -#define CPTEC 46 -#define CHM 146 -#define LAMI 200 +#define NMC 7 +#define JMA 34 +#define ECMWF 98 +#define DWD 78 +#define CMC 54 +#define CPTEC 46 +#define CHM 146 +#define LAMI 200 /* ECMWF Extensions */ -#define PDS_EcLocalId(pds) (PDS_LEN(pds) >= 41 ? (pds[40]) : 0) -#define PDS_EcClass(pds) (PDS_LEN(pds) >= 42 ? (pds[41]) : 0) -#define PDS_EcType(pds) (PDS_LEN(pds) >= 43 ? (pds[42]) : 0) -#define PDS_EcStream(pds) (PDS_LEN(pds) >= 45 ? (INT2(pds[43], pds[44])) : 0) +#define PDS_EcLocalId(pds) (PDS_LEN(pds) >= 41 ? (pds[40]) : 0) +#define PDS_EcClass(pds) (PDS_LEN(pds) >= 42 ? (pds[41]) : 0) +#define PDS_EcType(pds) (PDS_LEN(pds) >= 43 ? (pds[42]) : 0) +#define PDS_EcStream(pds) (PDS_LEN(pds) >= 45 ? (INT2(pds[43], pds[44])) : 0) -#define PDS_EcENS(pds) (PDS_LEN(pds) >= 52 && pds[40] == 1 && \ - pds[43] * 256 + pds[44] == 1035 && pds[50] != 0) -#define PDS_EcFcstNo(pds) (pds[49]) +#define PDS_EcENS(pds) (PDS_LEN(pds) >= 52 && pds[40] == 1 && \ + pds[43] * 256 + pds[44] == 1035 && pds[50] != 0) +#define PDS_EcFcstNo(pds) (pds[49]) -#define PDS_Ec16Version(pds) (pds + 45) -#define PDS_Ec16Number(pds) (PDS_EcLocalId(pds) == 16 ? UINT2(pds[49],pds[50]) : 0) -#define PDS_Ec16SysNum(pds) (PDS_EcLocalId(pds) == 16 ? UINT2(pds[51],pds[52]) : 0) -#define PDS_Ec16MethodNum(pds) (PDS_EcLocalId(pds) == 16 ? UINT2(pds[53],pds[54]) : 0) -#define PDS_Ec16VerfMon(pds) (PDS_EcLocalId(pds) == 16 ? UINT4(pds[55],pds[56],pds[57],pds[58]) : 0) -#define PDS_Ec16AvePeriod(pds) (PDS_EcLocalId(pds) == 16 ? pds[59] : 0) -#define PDS_Ec16FcstMon(pds) (PDS_EcLocalId(pds) == 16 ? UINT2(pds[60],pds[61]) : 0) +#define PDS_Ec16Version(pds) (pds + 45) +#define PDS_Ec16Number(pds) (PDS_EcLocalId(pds) == 16 ? UINT2(pds[49],pds[50]) : 0) +#define PDS_Ec16SysNum(pds) (PDS_EcLocalId(pds) == 16 ? UINT2(pds[51],pds[52]) : 0) +#define PDS_Ec16MethodNum(pds) (PDS_EcLocalId(pds) == 16 ? UINT2(pds[53],pds[54]) : 0) +#define PDS_Ec16VerfMon(pds) (PDS_EcLocalId(pds) == 16 ? UINT4(pds[55],pds[56],pds[57],pds[58]) : 0) +#define PDS_Ec16AvePeriod(pds) (PDS_EcLocalId(pds) == 16 ? pds[59] : 0) +#define PDS_Ec16FcstMon(pds) (PDS_EcLocalId(pds) == 16 ? UINT2(pds[60],pds[61]) : 0) /* NCEP Extensions */ -#define PDS_NcepENS(pds) (PDS_LEN(pds) >= 44 && pds[25] == 2 && pds[40] == 1) -#define PDS_NcepFcstType(pds) (pds[41]) -#define PDS_NcepFcstNo(pds) (pds[42]) -#define PDS_NcepFcstProd(pds) (pds[43]) +#define PDS_NcepENS(pds) (PDS_LEN(pds) >= 44 && pds[25] == 2 && pds[40] == 1) +#define PDS_NcepFcstType(pds) (pds[41]) +#define PDS_NcepFcstNo(pds) (pds[42]) +#define PDS_NcepFcstProd(pds) (pds[43]) /* time units */ @@ -433,7 +432,7 @@ void ensemble(unsigned char *pds, int mode); -#define VERSION "v1.8.2 (3-17) Wesley Ebisuzaki\n\t\tDWD-tables 2,201-205 (11-28-2005) Helmut P. Frank\n\t\tspectral: Luis Kornblueh (MPI)" +#define VERSION "v1.8.5 (9-2023) Wesley Ebisuzaki\n\t\tDWD-tables 2,201-205 (11-28-2005) Helmut P. Frank\n\t\tspectral: Luis Kornblueh (MPI)" #define CHECK_GRIB /* #define DEBUG */ @@ -442,10 +441,10 @@ void ensemble(unsigned char *pds, int mode); * wgrib.c is placed into the public domain. While you could * legally do anything you want with the code, telling the world * that you wrote it would be uncool. Selling it would be really - * uncool. The code was originally written for NMC/NCAR Reanalysis + * uncool. The code was originally written for NMC/NCAR Reanalysis * and handles most GRIB files except for the ECMWF spectral files. * (ECMWF's spectral->grid code are copyrighted and in FORTRAN.) - * The code, as usual, is not waranteed to be fit for any purpose + * The code, as usual, is not waranteed to be fit for any purpose * what so ever. However, wgrib is operational NCEP code, so it * better work for our files. */ @@ -464,7 +463,7 @@ void ensemble(unsigned char *pds, int mode); */ #define MSEEK 1024 -#define BUFF_ALLOC0 40000 +#define BUFF_ALLOC0 40000 #ifndef min @@ -473,7 +472,7 @@ void ensemble(unsigned char *pds, int mode); #endif #ifndef DEF_T62_NCEP_TABLE -#define DEF_T62_NCEP_TABLE rean +#define DEF_T62_NCEP_TABLE rean #endif enum Def_NCEP_Table def_ncep_table = DEF_T62_NCEP_TABLE; int minute = 0; @@ -493,8 +492,8 @@ int main(int argc, char **argv) { FILE *input, *dump_file = NULL; char line[2000]; enum {BINARY, TEXT, IEEE, GRIB, NONE} output_type = NONE; - enum {DUMP_ALL, DUMP_RECORD, DUMP_POSITION, DUMP_LIST, INVENTORY} - mode = INVENTORY; + enum {DUMP_ALL, DUMP_RECORD, DUMP_POSITION, DUMP_LIST, INVENTORY} + mode = INVENTORY; enum {none, dwd, simple} header = simple; long int dump = -1; @@ -504,186 +503,186 @@ int main(int argc, char **argv) { int return_code = 0; if (argc == 1) { - fprintf(stderr, "\nPortable Grib decoder for %s etc.\n", - (def_ncep_table == opn_nowarn || def_ncep_table == opn) ? - "NCEP Operations" : "NCEP/NCAR Reanalysis"); - fprintf(stderr, " it slices, dices %s\n", VERSION); - fprintf(stderr, " usage: %s [grib file] [options]\n\n", argv[0]); - - fprintf(stderr, "Inventory/diagnostic-output selections\n"); - fprintf(stderr, " -s/-v short/verbose inventory\n"); - fprintf(stderr, " -V diagnostic output (not inventory)\n"); - fprintf(stderr, " (none) regular inventory\n"); - - fprintf(stderr, " Options\n"); - fprintf(stderr, " -PDS/-PDS10 print PDS in hex/decimal\n"); - fprintf(stderr, " -GDS/-GDS10 print GDS in hex/decimal\n"); - fprintf(stderr, " -verf print forecast verification time\n"); - fprintf(stderr, " -ncep_opn/-ncep_rean default T62 NCEP grib table\n"); - fprintf(stderr, " -4yr print year using 4 digits\n"); - fprintf(stderr, " -min print minutes\n"); - fprintf(stderr, " -ncep_ens ensemble info encoded in ncep format\n"); - - fprintf(stderr, "Decoding GRIB selection\n"); - fprintf(stderr, " -d [record number|all] decode record number\n"); - fprintf(stderr, " -p [byte position] decode record at byte position\n"); - fprintf(stderr, " -i decode controlled by stdin (inventory list)\n"); - fprintf(stderr, " (none) no decoding\n"); - - fprintf(stderr, " Options\n"); - fprintf(stderr, " -text/-ieee/-grib/-bin convert to text/ieee/grib/bin (default)\n"); - fprintf(stderr, " -nh/-h output will have no headers/headers (default)\n"); - fprintf(stderr, " -dwdgrib output dwd headers, grib (do not append)\n"); - fprintf(stderr, " -H output will include PDS and GDS (-bin/-ieee only)\n"); - fprintf(stderr, " -append append to output file\n"); - fprintf(stderr, " -o [file] output file name, 'dump' is default\n"); - fprintf(stderr, " Misc\n"); - fprintf(stderr, " -cmc [file] use NCEP tables for CMC (dangerous)\n"); - exit(8); + fprintf(stderr, "\nPortable Grib decoder for %s etc.\n", + (def_ncep_table == opn_nowarn || def_ncep_table == opn) ? + "NCEP Operations" : "NCEP/NCAR Reanalysis"); + fprintf(stderr, " it slices, dices %s\n", VERSION); + fprintf(stderr, " usage: %s [grib file] [options]\n\n", argv[0]); + + fprintf(stderr, "Inventory/diagnostic-output selections\n"); + fprintf(stderr, " -s/-v short/verbose inventory\n"); + fprintf(stderr, " -V diagnostic output (not inventory)\n"); + fprintf(stderr, " (none) regular inventory\n"); + + fprintf(stderr, " Options\n"); + fprintf(stderr, " -PDS/-PDS10 print PDS in hex/decimal\n"); + fprintf(stderr, " -GDS/-GDS10 print GDS in hex/decimal\n"); + fprintf(stderr, " -verf print forecast verification time\n"); + fprintf(stderr, " -ncep_opn/-ncep_rean default T62 NCEP grib table\n"); + fprintf(stderr, " -4yr print year using 4 digits\n"); + fprintf(stderr, " -min print minutes\n"); + fprintf(stderr, " -ncep_ens ensemble info encoded in ncep format\n"); + + fprintf(stderr, "Decoding GRIB selection\n"); + fprintf(stderr, " -d [record number|all] decode record number\n"); + fprintf(stderr, " -p [byte position] decode record at byte position\n"); + fprintf(stderr, " -i decode controlled by stdin (inventory list)\n"); + fprintf(stderr, " (none) no decoding\n"); + + fprintf(stderr, " Options\n"); + fprintf(stderr, " -text/-ieee/-grib/-bin convert to text/ieee/grib/bin (default)\n"); + fprintf(stderr, " -nh/-h output will have no headers/headers (default)\n"); + fprintf(stderr, " -dwdgrib output dwd headers, grib (do not append)\n"); + fprintf(stderr, " -H output will include PDS and GDS (-bin/-ieee only)\n"); + fprintf(stderr, " -append append to output file\n"); + fprintf(stderr, " -o [file] output file name, 'dump' is default\n"); + fprintf(stderr, " Misc\n"); + fprintf(stderr, " -cmc [file] use NCEP tables for CMC (dangerous)\n"); + exit(8); } file_arg = 0; for (i = 1; i < argc; i++) { - if (strcmp(argv[i],"-PDS") == 0) { - print_PDS = 1; - continue; - } - if (strcmp(argv[i],"-PDS10") == 0) { - print_PDS10 = 1; - continue; - } - if (strcmp(argv[i],"-GDS") == 0) { - print_GDS = 1; - continue; - } - if (strcmp(argv[i],"-GDS10") == 0) { - print_GDS10 = 1; - continue; - } - if (strcmp(argv[i],"-v") == 0) { - verbose = 1; - continue; - } - if (strcmp(argv[i],"-V") == 0) { - verbose = 2; - continue; - } - if (strcmp(argv[i],"-s") == 0) { - verbose = -1; - continue; - } - if (strcmp(argv[i],"-text") == 0) { - output_type = TEXT; - continue; - } - if (strcmp(argv[i],"-bin") == 0) { - output_type = BINARY; - continue; - } - if (strcmp(argv[i],"-ieee") == 0) { - output_type = IEEE; - continue; - } - if (strcmp(argv[i],"-grib") == 0) { - output_type = GRIB; - continue; - } - if (strcmp(argv[i],"-nh") == 0) { - header = none; - continue; - } - if (strcmp(argv[i],"-h") == 0) { - header = simple; - continue; - } - if (strcmp(argv[i],"-dwdgrib") == 0) { - header = dwd; - output_type = GRIB; - continue; - } - if (strcmp(argv[i],"-append") == 0) { - append = 1; - continue; - } - if (strcmp(argv[i],"-verf") == 0) { - v_time = 1; - continue; - } - if (strcmp(argv[i],"-cmc") == 0) { - cmc_eq_ncep = 1; - continue; - } - if (strcmp(argv[i],"-d") == 0) { - if (strcmp(argv[i+1],"all") == 0) { - mode = DUMP_ALL; - } - else { - dump = atol(argv[i+1]); - mode = DUMP_RECORD; - } - i++; - if (output_type == NONE) output_type = BINARY; - continue; - } - if (strcmp(argv[i],"-p") == 0) { - pos = atol(argv[i+1]); - i++; - dump = 1; - if (output_type == NONE) output_type = BINARY; - mode = DUMP_POSITION; - continue; - } - if (strcmp(argv[i],"-i") == 0) { - if (output_type == NONE) output_type = BINARY; - mode = DUMP_LIST; - continue; - } - if (strcmp(argv[i],"-H") == 0) { - output_PDS_GDS = 1; - continue; - } - if (strcmp(argv[i],"-NH") == 0) { - output_PDS_GDS = 0; - continue; - } - if (strcmp(argv[i],"-4yr") == 0) { - year_4 = 1; - continue; - } - if (strcmp(argv[i],"-ncep_opn") == 0) { - def_ncep_table = opn_nowarn; - continue; - } - if (strcmp(argv[i],"-ncep_rean") == 0) { - def_ncep_table = rean_nowarn; - continue; - } - if (strcmp(argv[i],"-o") == 0) { - dump_file_name = argv[i+1]; - i++; - continue; - } - if (strcmp(argv[i],"--v") == 0) { - printf("wgrib: %s\n", VERSION); - exit(0); - } - if (strcmp(argv[i],"-min") == 0) { - minute = 1; - continue; - } - if (strcmp(argv[i],"-ncep_ens") == 0) { - ncep_ens = 1; - continue; - } - if (file_arg == 0) { - file_arg = i; + if (strcmp(argv[i],"-PDS") == 0) { + print_PDS = 1; + continue; + } + if (strcmp(argv[i],"-PDS10") == 0) { + print_PDS10 = 1; + continue; + } + if (strcmp(argv[i],"-GDS") == 0) { + print_GDS = 1; + continue; + } + if (strcmp(argv[i],"-GDS10") == 0) { + print_GDS10 = 1; + continue; + } + if (strcmp(argv[i],"-v") == 0) { + verbose = 1; + continue; + } + if (strcmp(argv[i],"-V") == 0) { + verbose = 2; + continue; + } + if (strcmp(argv[i],"-s") == 0) { + verbose = -1; + continue; + } + if (strcmp(argv[i],"-text") == 0) { + output_type = TEXT; + continue; + } + if (strcmp(argv[i],"-bin") == 0) { + output_type = BINARY; + continue; + } + if (strcmp(argv[i],"-ieee") == 0) { + output_type = IEEE; + continue; + } + if (strcmp(argv[i],"-grib") == 0) { + output_type = GRIB; + continue; + } + if (strcmp(argv[i],"-nh") == 0) { + header = none; + continue; + } + if (strcmp(argv[i],"-h") == 0) { + header = simple; + continue; + } + if (strcmp(argv[i],"-dwdgrib") == 0) { + header = dwd; + output_type = GRIB; + continue; + } + if (strcmp(argv[i],"-append") == 0) { + append = 1; + continue; + } + if (strcmp(argv[i],"-verf") == 0) { + v_time = 1; + continue; } - else { - fprintf(stderr,"argument: %s ????\n", argv[i]); + if (strcmp(argv[i],"-cmc") == 0) { + cmc_eq_ncep = 1; + continue; } + if (strcmp(argv[i],"-d") == 0) { + if (strcmp(argv[i+1],"all") == 0) { + mode = DUMP_ALL; + } + else { + dump = atol(argv[i+1]); + mode = DUMP_RECORD; + } + i++; + if (output_type == NONE) output_type = BINARY; + continue; + } + if (strcmp(argv[i],"-p") == 0) { + pos = atol(argv[i+1]); + i++; + dump = 1; + if (output_type == NONE) output_type = BINARY; + mode = DUMP_POSITION; + continue; + } + if (strcmp(argv[i],"-i") == 0) { + if (output_type == NONE) output_type = BINARY; + mode = DUMP_LIST; + continue; + } + if (strcmp(argv[i],"-H") == 0) { + output_PDS_GDS = 1; + continue; + } + if (strcmp(argv[i],"-NH") == 0) { + output_PDS_GDS = 0; + continue; + } + if (strcmp(argv[i],"-4yr") == 0) { + year_4 = 1; + continue; + } + if (strcmp(argv[i],"-ncep_opn") == 0) { + def_ncep_table = opn_nowarn; + continue; + } + if (strcmp(argv[i],"-ncep_rean") == 0) { + def_ncep_table = rean_nowarn; + continue; + } + if (strcmp(argv[i],"-o") == 0) { + dump_file_name = argv[i+1]; + i++; + continue; + } + if (strcmp(argv[i],"--v") == 0) { + printf("wgrib: %s\n", VERSION); + exit(0); + } + if (strcmp(argv[i],"-min") == 0) { + minute = 1; + continue; + } + if (strcmp(argv[i],"-ncep_ens") == 0) { + ncep_ens = 1; + continue; + } + if (file_arg == 0) { + file_arg = i; + } + else { + fprintf(stderr,"argument: %s ????\n", argv[i]); + } } if (file_arg == 0) { - fprintf(stderr,"no GRIB file to process\n"); - exit(8); + fprintf(stderr,"no GRIB file to process\n"); + exit(8); } if ((input = fopen(argv[file_arg],"rb")) == NULL) { fprintf(stderr,"could not open file: %s\n", argv[file_arg]); @@ -691,53 +690,53 @@ int main(int argc, char **argv) { } if ((buffer = (unsigned char *) malloc(BUFF_ALLOC0)) == NULL) { - fprintf(stderr,"not enough memory\n"); + fprintf(stderr,"not enough memory\n"); } buffer_size = BUFF_ALLOC0; /* open output file */ if (mode != INVENTORY) { - open_parm[0] = append ? 'a' : 'w'; open_parm[1] = 'b'; open_parm[2] = '\0'; - if (output_type == TEXT) open_parm[1] = '\0'; + open_parm[0] = append ? 'a' : 'w'; open_parm[1] = 'b'; open_parm[2] = '\0'; + if (output_type == TEXT) open_parm[1] = '\0'; - if ((dump_file = fopen(dump_file_name,open_parm)) == NULL) { - fprintf(stderr,"could not open dump file\n"); - exit(8); + if ((dump_file = fopen(dump_file_name,open_parm)) == NULL) { + fprintf(stderr,"could not open dump file\n"); + exit(8); } - if (header == dwd && output_type == GRIB) wrtieee_header(0, dump_file); + if (header == dwd && output_type == GRIB) wrtieee_header(0, dump_file); } /* skip dump - 1 records */ for (i = 1; i < dump; i++) { - msg = seek_grib(input, &pos, &len_grib, buffer, MSEEK); - if (msg == NULL) { - fprintf(stderr, "ran out of data or bad file\n"); - exit(8); - } - pos += len_grib; + msg = seek_grib(input, &pos, &len_grib, buffer, MSEEK); + if (msg == NULL) { + fprintf(stderr, "ran out of data or bad file\n"); + exit(8); + } + pos += len_grib; } if (dump > 0) count += dump - 1; n_dump = 0; for (;;) { - if (n_dump == 1 && (mode == DUMP_RECORD || mode == DUMP_POSITION)) break; - if (mode == DUMP_LIST) { - if (fgets(line,sizeof(line), stdin) == NULL) break; + if (n_dump == 1 && (mode == DUMP_RECORD || mode == DUMP_POSITION)) break; + if (mode == DUMP_LIST) { + if (fgets(line,sizeof(line), stdin) == NULL) break; line[sizeof(line) - 1] = 0; if (sscanf(line,"%ld:%lu:", &count, &pos) != 2) { - fprintf(stderr,"bad input from stdin\n"); + fprintf(stderr,"bad input from stdin\n"); fprintf(stderr," %s\n", line); - exit(8); - } - } - - fail: - msg = seek_grib(input, &pos, &len_grib, buffer, MSEEK); - if (msg == NULL) { - if (mode == INVENTORY || mode == DUMP_ALL) break; - fprintf(stderr,"missing GRIB record(s)\n"); - exit(8); - } + exit(8); + } + } + +fail: + msg = seek_grib(input, &pos, &len_grib, buffer, MSEEK); + if (msg == NULL) { + if (mode == INVENTORY || mode == DUMP_ALL) break; + fprintf(stderr,"missing GRIB record(s)\n"); + exit(8); + } /* read all whole grib record */ if (len_grib + msg - buffer > buffer_size) { @@ -749,45 +748,45 @@ int main(int argc, char **argv) { } } if (read_grib(input, pos, len_grib, buffer) == 0) { - fprintf(stderr,"error, could not read to end of record %ld\n",count); - exit(8); - } + fprintf(stderr,"error, could not read to end of record %ld\n",count); + exit(8); + } - /* parse grib message */ + /* parse grib message */ - msg = buffer; - end_msg = msg + len_grib - 1; + msg = buffer; + end_msg = msg + len_grib - 1; - /* check if last 4 bytes are '7777' */ + /* check if last 4 bytes are '7777' */ -// simple check is for last 4 bytes == '7777' -// better check to see if pointers don't go past end_msg +// simple check is for last 4 bytes == '7777' +// better check to see if pointers don't go past end_msg // if (end_msg[0] != 0x37 || end_msg[-1] != 0x37 || end_msg[-2] != 0x37 || end_msg[-3] != 0x37) { -// fprintf(stderr,"Skipping illegal grib1 message: error expected ending 7777\n"); -// pos++; -// goto fail; -// } - - if (msg + 8 + 27 > end_msg) { - pos++; - goto fail; - } +// fprintf(stderr,"Skipping illegal grib1 message: error expected ending 7777\n"); +// pos++; +// goto fail; +// } + + if (msg + 8 + 27 > end_msg) { + pos++; + goto fail; + } pds = (msg + 8); pointer = pds + PDS_LEN(pds); - if (pointer > end_msg) { - pos++; - goto fail; - } + if (pointer > end_msg) { + pos++; + goto fail; + } if (PDS_HAS_GDS(pds)) { gds = pointer; pointer += GDS_LEN(gds); - if (pointer > end_msg) { - pos++; - goto fail; - } + if (pointer > end_msg) { + pos++; + goto fail; + } } else { gds = NULL; @@ -801,388 +800,388 @@ int main(int argc, char **argv) { bms = NULL; } - if (pointer+10 > end_msg) { - pos++; - goto fail; - } + if (pointer+10 > end_msg) { + pos++; + goto fail; + } bds = pointer; pointer += BDS_LEN(bds); - if (pointer-msg+4 != len_grib) { - fprintf(stderr,"Len of grib message is inconsistent.\n"); - } + if (pointer-msg+4 != len_grib) { + fprintf(stderr,"Len of grib message is inconsistent.\n"); + } /* end section - "7777" in ascii */ if (pointer[0] != 0x37 || pointer[1] != 0x37 || pointer[2] != 0x37 || pointer[3] != 0x37) { fprintf(stderr,"\n\n missing end section\n"); - fprintf(stderr, "%2x %2x %2x %2x\n", pointer[0], pointer[1], - pointer[2], pointer[3]); + fprintf(stderr, "%2x %2x %2x %2x\n", pointer[0], pointer[1], + pointer[2], pointer[3]); #ifdef DEBUG - printf("ignoring missing end section\n"); + printf("ignoring missing end section\n"); #else - exit(8); + exit(8); #endif } - /* figure out size of array */ - if (gds != NULL) { - GDS_grid(gds, bds, &nx, &ny, &nxny); - } - else if (bms != NULL) { - nxny = nx = BMS_nxny(bms); - ny = 1; - } - else { - if (BDS_NumBits(bds) == 0) { + /* figure out size of array */ + if (gds != NULL) { + GDS_grid(gds, bds, &nx, &ny, &nxny); + } + else if (bms != NULL) { + nxny = nx = BMS_nxny(bms); + ny = 1; + } + else { + if (BDS_NumBits(bds) == 0) { nxny = nx = 1; fprintf(stderr,"Missing GDS, constant record .. cannot " - "determine number of data points\n"); - } - else { - nxny = nx = BDS_NValues(bds); - } - ny = 1; - } + "determine number of data points\n"); + } + else { + nxny = nx = BDS_NValues(bds); + } + ny = 1; + } #ifdef CHECK_GRIB - if (gds && ! GDS_Harmonic(gds)) { - /* this grib check only works for simple packing */ - /* turn off if harmonic */ - if (BDS_NumBits(bds) != 0) { - i = BDS_NValues(bds); - if (bms != NULL) { - i += missing_points(BMS_bitmap(bms),nxny); - } - if (i != nxny) { - fprintf(stderr,"grib header at record %ld: two values of nxny %ld %d\n", - count,nxny,i); - fprintf(stderr," LEN %d DataStart %d UnusedBits %d #Bits %d nxny %ld\n", - BDS_LEN(bds), BDS_DataStart(bds),BDS_UnusedBits(bds), - BDS_NumBits(bds), nxny); - return_code = 15; - nxny = nx = i; - ny = 1; - } - } - + if (gds && ! GDS_Harmonic(gds)) { + /* this grib check only works for simple packing */ + /* turn off if harmonic */ + if (BDS_NumBits(bds) != 0) { + i = BDS_NValues(bds); + if (bms != NULL) { + i += missing_points(BMS_bitmap(bms),nxny); + } + if (i != nxny) { + fprintf(stderr,"grib header at record %ld: two values of nxny %ld %d\n", + count,nxny,i); + fprintf(stderr," LEN %d DataStart %d UnusedBits %d #Bits %d nxny %ld\n", + BDS_LEN(bds), BDS_DataStart(bds),BDS_UnusedBits(bds), + BDS_NumBits(bds), nxny); + return_code = 15; + nxny = nx = i; + ny = 1; + } + } + } #endif - + if (verbose <= 0) { - printf("%ld:%lu:d=", count, pos); - PDS_date(pds,year_4,v_time); - printf(":%s:", k5toa(pds)); + printf("%ld:%lu:d=", count, pos); + PDS_date(pds,year_4,v_time); + printf(":%s:", k5toa(pds)); if (verbose == 0) printf("kpds5=%d:kpds6=%d:kpds7=%d:TR=%d:P1=%d:P2=%d:TimeU=%d:", - PDS_PARAM(pds),PDS_KPDS6(pds),PDS_KPDS7(pds), - PDS_TimeRange(pds),PDS_P1(pds),PDS_P2(pds), - PDS_ForecastTimeUnit(pds)); - levels(PDS_KPDS6(pds), PDS_KPDS7(pds),PDS_Center(pds),verbose); printf(":"); - PDStimes(PDS_TimeRange(pds),PDS_P1(pds),PDS_P2(pds), - PDS_ForecastTimeUnit(pds)); - if (PDS_Center(pds) == ECMWF) EC_ext(pds,"",":",verbose); - ensemble(pds, verbose); - printf("NAve=%d",PDS_NumAve(pds)); - if (print_PDS || print_PDS10) print_pds(pds, print_PDS, print_PDS10, verbose); - if (gds && (print_GDS || print_GDS10)) print_gds(gds, print_GDS, print_GDS10, verbose); + PDS_PARAM(pds),PDS_KPDS6(pds),PDS_KPDS7(pds), + PDS_TimeRange(pds),PDS_P1(pds),PDS_P2(pds), + PDS_ForecastTimeUnit(pds)); + levels(PDS_KPDS6(pds), PDS_KPDS7(pds),PDS_Center(pds),verbose); printf(":"); + PDStimes(PDS_TimeRange(pds),PDS_P1(pds),PDS_P2(pds), + PDS_ForecastTimeUnit(pds)); + if (PDS_Center(pds) == ECMWF) EC_ext(pds,"",":",verbose); + ensemble(pds, verbose); + printf("NAve=%d",PDS_NumAve(pds)); + if (print_PDS || print_PDS10) print_pds(pds, print_PDS, print_PDS10, verbose); + if (gds && (print_GDS || print_GDS10)) print_gds(gds, print_GDS, print_GDS10, verbose); printf("\n"); - } - else if (verbose == 1) { - printf("%ld:%lu:D=", count, pos); + } + else if (verbose == 1) { + printf("%ld:%lu:D=", count, pos); PDS_date(pds, 1, v_time); - printf(":%s:", k5toa(pds)); - levels(PDS_KPDS6(pds), PDS_KPDS7(pds), PDS_Center(pds),verbose); printf(":"); + printf(":%s:", k5toa(pds)); + levels(PDS_KPDS6(pds), PDS_KPDS7(pds), PDS_Center(pds),verbose); printf(":"); printf("kpds=%d,%d,%d:", - PDS_PARAM(pds),PDS_KPDS6(pds),PDS_KPDS7(pds)); - PDStimes(PDS_TimeRange(pds),PDS_P1(pds),PDS_P2(pds), - PDS_ForecastTimeUnit(pds)); - if (PDS_Center(pds) == ECMWF) EC_ext(pds,"",":",verbose); - ensemble(pds, verbose); - GDS_winds(gds, verbose); + PDS_PARAM(pds),PDS_KPDS6(pds),PDS_KPDS7(pds)); + PDStimes(PDS_TimeRange(pds),PDS_P1(pds),PDS_P2(pds), + PDS_ForecastTimeUnit(pds)); + if (PDS_Center(pds) == ECMWF) EC_ext(pds,"",":",verbose); + ensemble(pds, verbose); + GDS_winds(gds, verbose); printf("\"%s", k5_comments(pds)); - if (print_PDS || print_PDS10) print_pds(pds, print_PDS, print_PDS10, verbose); - if (gds && (print_GDS || print_GDS10)) print_gds(gds, print_GDS, print_GDS10, verbose); + if (print_PDS || print_PDS10) print_pds(pds, print_PDS, print_PDS10, verbose); + if (gds && (print_GDS || print_GDS10)) print_gds(gds, print_GDS, print_GDS10, verbose); printf("\n"); - } + } else if (verbose == 2) { - printf("rec %ld:%lu:date ", count, pos); - PDS_date(pds, 1, v_time); - printf(" %s kpds5=%d kpds6=%d kpds7=%d levels=(%d,%d) grid=%d ", - k5toa(pds), PDS_PARAM(pds), PDS_KPDS6(pds), PDS_KPDS7(pds), - PDS_LEVEL1(pds), PDS_LEVEL2(pds), PDS_Grid(pds)); - levels(PDS_KPDS6(pds),PDS_KPDS7(pds),PDS_Center(pds),verbose); - - printf(" "); - if (PDS_Center(pds) == ECMWF) EC_ext(pds,""," ",verbose); - ensemble(pds, verbose); - PDStimes(PDS_TimeRange(pds),PDS_P1(pds),PDS_P2(pds), - PDS_ForecastTimeUnit(pds)); - if (bms != NULL) - printf(" bitmap: %d undef", missing_points(BMS_bitmap(bms),nxny)); + printf("rec %ld:%lu:date ", count, pos); + PDS_date(pds, 1, v_time); + printf(" %s kpds5=%d kpds6=%d kpds7=%d levels=(%d,%d) grid=%d ", + k5toa(pds), PDS_PARAM(pds), PDS_KPDS6(pds), PDS_KPDS7(pds), + PDS_LEVEL1(pds), PDS_LEVEL2(pds), PDS_Grid(pds)); + levels(PDS_KPDS6(pds),PDS_KPDS7(pds),PDS_Center(pds),verbose); + + printf(" "); + if (PDS_Center(pds) == ECMWF) EC_ext(pds,""," ",verbose); + ensemble(pds, verbose); + PDStimes(PDS_TimeRange(pds),PDS_P1(pds),PDS_P2(pds), + PDS_ForecastTimeUnit(pds)); + if (bms != NULL) + printf(" bitmap: %d undef", missing_points(BMS_bitmap(bms),nxny)); printf("\n %s=%s\n", k5toa(pds), k5_comments(pds)); - + printf(" timerange %d P1 %d P2 %d TimeU %d nx %d ny %d GDS grid %d " - "num_in_ave %d missing %d\n", - PDS_TimeRange(pds),PDS_P1(pds),PDS_P2(pds), - PDS_ForecastTimeUnit(pds), nx, ny, - gds == NULL ? -1 : GDS_DataType(gds), - PDS_NumAve(pds), PDS_NumMissing(pds)); - - printf(" center %d subcenter %d process %d Table %d", - PDS_Center(pds),PDS_Subcenter(pds),PDS_Model(pds), - PDS_Vsn(pds)); - GDS_winds(gds, verbose); - printf("\n"); - - if (gds && GDS_LatLon(gds) && nx != -1) - printf(" latlon: lat %f to %f by %f nxny %ld\n" + "num_in_ave %d missing %d\n", + PDS_TimeRange(pds),PDS_P1(pds),PDS_P2(pds), + PDS_ForecastTimeUnit(pds), nx, ny, + gds == NULL ? -1 : GDS_DataType(gds), + PDS_NumAve(pds), PDS_NumMissing(pds)); + + printf(" center %d subcenter %d process %d Table %d", + PDS_Center(pds),PDS_Subcenter(pds),PDS_Model(pds), + PDS_Vsn(pds)); + GDS_winds(gds, verbose); + printf("\n"); + + if (gds && GDS_LatLon(gds) && nx != -1) + printf(" latlon: lat %f to %f by %f nxny %ld\n" " long %f to %f by %f, (%d x %d) scan %d " "mode %d bdsgrid %d\n", - 0.001*GDS_LatLon_La1(gds), 0.001*GDS_LatLon_La2(gds), - 0.001*GDS_LatLon_dy(gds), nxny, 0.001*GDS_LatLon_Lo1(gds), - 0.001*GDS_LatLon_Lo2(gds), 0.001*GDS_LatLon_dx(gds), - nx, ny, GDS_LatLon_scan(gds), GDS_LatLon_mode(gds), - BDS_Grid(bds)); - else if (gds && GDS_LatLon(gds) && nx == -1) { - printf(" thinned latlon: lat %f to %f by %f nxny %ld\n" + 0.001*GDS_LatLon_La1(gds), 0.001*GDS_LatLon_La2(gds), + 0.001*GDS_LatLon_dy(gds), nxny, 0.001*GDS_LatLon_Lo1(gds), + 0.001*GDS_LatLon_Lo2(gds), 0.001*GDS_LatLon_dx(gds), + nx, ny, GDS_LatLon_scan(gds), GDS_LatLon_mode(gds), + BDS_Grid(bds)); + else if (gds && GDS_LatLon(gds) && nx == -1) { + printf(" thinned latlon: lat %f to %f by %f nxny %ld\n" " long %f to %f, %ld grid pts (%d x %d) scan %d" - " mode %d bdsgrid %d\n", - 0.001*GDS_LatLon_La1(gds), 0.001*GDS_LatLon_La2(gds), - 0.001*GDS_LatLon_dy(gds), nxny, 0.001*GDS_LatLon_Lo1(gds), - 0.001*GDS_LatLon_Lo2(gds), - nxny, nx, ny, GDS_LatLon_scan(gds), GDS_LatLon_mode(gds), - BDS_Grid(bds)); - GDS_prt_thin_lon(gds); - } - else if (gds && GDS_Gaussian(gds) && nx != -1) - printf(" gaussian: lat %f to %f\n" + " mode %d bdsgrid %d\n", + 0.001*GDS_LatLon_La1(gds), 0.001*GDS_LatLon_La2(gds), + 0.001*GDS_LatLon_dy(gds), nxny, 0.001*GDS_LatLon_Lo1(gds), + 0.001*GDS_LatLon_Lo2(gds), + nxny, nx, ny, GDS_LatLon_scan(gds), GDS_LatLon_mode(gds), + BDS_Grid(bds)); + GDS_prt_thin_lon(gds); + } + else if (gds && GDS_Gaussian(gds) && nx != -1) + printf(" gaussian: lat %f to %f\n" " long %f to %f by %f, (%d x %d) scan %d" - " mode %d bdsgrid %d\n", - 0.001*GDS_LatLon_La1(gds), 0.001*GDS_LatLon_La2(gds), - 0.001*GDS_LatLon_Lo1(gds), 0.001*GDS_LatLon_Lo2(gds), - 0.001*GDS_LatLon_dx(gds), - nx, ny, GDS_LatLon_scan(gds), GDS_LatLon_mode(gds), - BDS_Grid(bds)); - else if (gds && GDS_Gaussian(gds) && nx == -1) { - printf(" thinned gaussian: lat %f to %f\n" + " mode %d bdsgrid %d\n", + 0.001*GDS_LatLon_La1(gds), 0.001*GDS_LatLon_La2(gds), + 0.001*GDS_LatLon_Lo1(gds), 0.001*GDS_LatLon_Lo2(gds), + 0.001*GDS_LatLon_dx(gds), + nx, ny, GDS_LatLon_scan(gds), GDS_LatLon_mode(gds), + BDS_Grid(bds)); + else if (gds && GDS_Gaussian(gds) && nx == -1) { + printf(" thinned gaussian: lat %f to %f\n" " long %f to %f, %ld grid pts (%d x %d) scan %d" - " mode %d bdsgrid %d\n", - 0.001*GDS_LatLon_La1(gds), 0.001*GDS_LatLon_La2(gds), - 0.001*GDS_LatLon_Lo1(gds), 0.001*GDS_LatLon_Lo2(gds), - nxny, nx, ny, GDS_LatLon_scan(gds), GDS_LatLon_mode(gds), - BDS_Grid(bds)); - GDS_prt_thin_lon(gds); - } - else if (gds && GDS_Polar(gds)) - printf(" polar stereo: Lat1 %f Long1 %f Orient %f\n" - " %s pole (%d x %d) Dx %d Dy %d scan %d mode %d\n", - 0.001*GDS_Polar_La1(gds),0.001*GDS_Polar_Lo1(gds), - 0.001*GDS_Polar_Lov(gds), - GDS_Polar_pole(gds) == 0 ? "north" : "south", nx,ny, - GDS_Polar_Dx(gds),GDS_Polar_Dy(gds), - GDS_Polar_scan(gds), GDS_Polar_mode(gds)); - else if (gds && GDS_Lambert(gds)) - printf(" Lambert Conf: Lat1 %f Lon1 %f Lov %f\n" + " mode %d bdsgrid %d\n", + 0.001*GDS_LatLon_La1(gds), 0.001*GDS_LatLon_La2(gds), + 0.001*GDS_LatLon_Lo1(gds), 0.001*GDS_LatLon_Lo2(gds), + nxny, nx, ny, GDS_LatLon_scan(gds), GDS_LatLon_mode(gds), + BDS_Grid(bds)); + GDS_prt_thin_lon(gds); + } + else if (gds && GDS_Polar(gds)) + printf(" polar stereo: Lat1 %f Long1 %f Orient %f\n" + " %s pole (%d x %d) Dx %d Dy %d scan %d mode %d\n", + 0.001*GDS_Polar_La1(gds),0.001*GDS_Polar_Lo1(gds), + 0.001*GDS_Polar_Lov(gds), + GDS_Polar_pole(gds) == 0 ? "north" : "south", nx,ny, + GDS_Polar_Dx(gds),GDS_Polar_Dy(gds), + GDS_Polar_scan(gds), GDS_Polar_mode(gds)); + else if (gds && GDS_Lambert(gds)) + printf(" Lambert Conf: Lat1 %f Lon1 %f Lov %f\n" " Latin1 %f Latin2 %f LatSP %f LonSP %f\n" " %s (%d x %d) Dx %f Dy %f scan %d mode %d\n", - 0.001*GDS_Lambert_La1(gds),0.001*GDS_Lambert_Lo1(gds), - 0.001*GDS_Lambert_Lov(gds), - 0.001*GDS_Lambert_Latin1(gds), 0.001*GDS_Lambert_Latin2(gds), - 0.001*GDS_Lambert_LatSP(gds), 0.001*GDS_Lambert_LonSP(gds), - GDS_Lambert_NP(gds) ? "North Pole": "South Pole", - GDS_Lambert_nx(gds), GDS_Lambert_ny(gds), - 0.001*GDS_Lambert_dx(gds), 0.001*GDS_Lambert_dy(gds), - GDS_Lambert_scan(gds), GDS_Lambert_mode(gds)); - else if (gds && GDS_Albers(gds)) - /* Albers equal area has same parameters as Lambert conformal */ - printf(" Albers Equal-Area: Lat1 %f Lon1 %f Lov %f\n" + 0.001*GDS_Lambert_La1(gds),0.001*GDS_Lambert_Lo1(gds), + 0.001*GDS_Lambert_Lov(gds), + 0.001*GDS_Lambert_Latin1(gds), 0.001*GDS_Lambert_Latin2(gds), + 0.001*GDS_Lambert_LatSP(gds), 0.001*GDS_Lambert_LonSP(gds), + GDS_Lambert_NP(gds) ? "North Pole": "South Pole", + GDS_Lambert_nx(gds), GDS_Lambert_ny(gds), + 0.001*GDS_Lambert_dx(gds), 0.001*GDS_Lambert_dy(gds), + GDS_Lambert_scan(gds), GDS_Lambert_mode(gds)); + else if (gds && GDS_Albers(gds)) + /* Albers equal area has same parameters as Lambert conformal */ + printf(" Albers Equal-Area: Lat1 %f Lon1 %f Lov %f\n" " Latin1 %f Latin2 %f LatSP %f LonSP %f\n" " %s (%d x %d) Dx %f Dy %f scan %d mode %d\n", - 0.001*GDS_Lambert_La1(gds),0.001*GDS_Lambert_Lo1(gds), - 0.001*GDS_Lambert_Lov(gds), - 0.001*GDS_Lambert_Latin1(gds), 0.001*GDS_Lambert_Latin2(gds), - 0.001*GDS_Lambert_LatSP(gds), 0.001*GDS_Lambert_LonSP(gds), - GDS_Lambert_NP(gds) ? "North Pole": "South Pole", - GDS_Lambert_nx(gds), GDS_Lambert_ny(gds), - 0.001*GDS_Lambert_dx(gds), 0.001*GDS_Lambert_dy(gds), - GDS_Lambert_scan(gds), GDS_Lambert_mode(gds)); - else if (gds && GDS_Mercator(gds)) - printf(" Mercator: lat %f to %f by %f km nxny %ld\n" + 0.001*GDS_Lambert_La1(gds),0.001*GDS_Lambert_Lo1(gds), + 0.001*GDS_Lambert_Lov(gds), + 0.001*GDS_Lambert_Latin1(gds), 0.001*GDS_Lambert_Latin2(gds), + 0.001*GDS_Lambert_LatSP(gds), 0.001*GDS_Lambert_LonSP(gds), + GDS_Lambert_NP(gds) ? "North Pole": "South Pole", + GDS_Lambert_nx(gds), GDS_Lambert_ny(gds), + 0.001*GDS_Lambert_dx(gds), 0.001*GDS_Lambert_dy(gds), + GDS_Lambert_scan(gds), GDS_Lambert_mode(gds)); + else if (gds && GDS_Mercator(gds)) + printf(" Mercator: lat %f to %f by %f km nxny %ld\n" " long %f to %f by %f km, (%d x %d) scan %d" - " mode %d Latin %f bdsgrid %d\n", - 0.001*GDS_Merc_La1(gds), 0.001*GDS_Merc_La2(gds), - 0.001*GDS_Merc_dy(gds), nxny, 0.001*GDS_Merc_Lo1(gds), - 0.001*GDS_Merc_Lo2(gds), 0.001*GDS_Merc_dx(gds), - nx, ny, GDS_Merc_scan(gds), GDS_Merc_mode(gds), - 0.001*GDS_Merc_Latin(gds), BDS_Grid(bds)); - else if (gds && GDS_ssEgrid(gds)) - printf(" Semi-staggered Arakawa E-Grid: lat0 %f lon0 %f nxny %d\n" + " mode %d Latin %f bdsgrid %d\n", + 0.001*GDS_Merc_La1(gds), 0.001*GDS_Merc_La2(gds), + 0.001*GDS_Merc_dy(gds), nxny, 0.001*GDS_Merc_Lo1(gds), + 0.001*GDS_Merc_Lo2(gds), 0.001*GDS_Merc_dx(gds), + nx, ny, GDS_Merc_scan(gds), GDS_Merc_mode(gds), + 0.001*GDS_Merc_Latin(gds), BDS_Grid(bds)); + else if (gds && GDS_ssEgrid(gds)) + printf(" Semi-staggered Arakawa E-Grid: lat0 %f lon0 %f nxny %d\n" " dLat %f dLon %f (%d x %d) scan %d mode %d\n", - 0.001*GDS_ssEgrid_La1(gds), 0.001*GDS_ssEgrid_Lo1(gds), - GDS_ssEgrid_n(gds)*GDS_ssEgrid_n_dum(gds), - 0.001*GDS_ssEgrid_dj(gds), 0.001*GDS_ssEgrid_di(gds), - GDS_ssEgrid_Lo2(gds), GDS_ssEgrid_La2(gds), - GDS_ssEgrid_scan(gds), GDS_ssEgrid_mode(gds)); + 0.001*GDS_ssEgrid_La1(gds), 0.001*GDS_ssEgrid_Lo1(gds), + GDS_ssEgrid_n(gds)*GDS_ssEgrid_n_dum(gds), + 0.001*GDS_ssEgrid_dj(gds), 0.001*GDS_ssEgrid_di(gds), + GDS_ssEgrid_Lo2(gds), GDS_ssEgrid_La2(gds), + GDS_ssEgrid_scan(gds), GDS_ssEgrid_mode(gds)); else if (gds && GDS_ss2dEgrid(gds)) printf(" Semi-staggered Arakawa E-Grid (2D): lat0 %f lon0 %f nxny %d\n" " dLat %f dLon %f (tlm0d %f tph0d %f) scan %d mode %d\n", - 0.001*GDS_ss2dEgrid_La1(gds), 0.001*GDS_ss2dEgrid_Lo1(gds), - GDS_ss2dEgrid_nx(gds)*GDS_ss2dEgrid_ny(gds), - 0.001*GDS_ss2dEgrid_dj(gds), 0.001*GDS_ss2dEgrid_di(gds), - 0.001*GDS_ss2dEgrid_Lo2(gds), 0.001*GDS_ss2dEgrid_La2(gds), - GDS_ss2dEgrid_scan(gds), GDS_ss2dEgrid_mode(gds)); + 0.001*GDS_ss2dEgrid_La1(gds), 0.001*GDS_ss2dEgrid_Lo1(gds), + GDS_ss2dEgrid_nx(gds)*GDS_ss2dEgrid_ny(gds), + 0.001*GDS_ss2dEgrid_dj(gds), 0.001*GDS_ss2dEgrid_di(gds), + 0.001*GDS_ss2dEgrid_Lo2(gds), 0.001*GDS_ss2dEgrid_La2(gds), + GDS_ss2dEgrid_scan(gds), GDS_ss2dEgrid_mode(gds)); else if (gds && GDS_ss2dBgrid(gds)) printf(" Semi-staggered Arakawa B-Grid (2D): lat0 %f lon0 %f nxny %d\n" " dLat %f dLon %f (tlm0d %f tph0d %f) scan %d mode %d\n", - 0.001*GDS_ss2dBgrid_La1(gds), 0.001*GDS_ss2dBgrid_Lo1(gds), - GDS_ss2dBgrid_nx(gds)*GDS_ss2dBgrid_ny(gds), - 0.001*GDS_ss2dBgrid_dj(gds), 0.001*GDS_ss2dBgrid_di(gds), - 0.001*GDS_ss2dBgrid_Lo2(gds), 0.001*GDS_ss2dBgrid_La2(gds), - GDS_ss2dBgrid_scan(gds), GDS_ss2dBgrid_mode(gds)); - else if (gds && GDS_fEgrid(gds)) - printf(" filled Arakawa E-Grid: lat0 %f lon0 %f nxny %d\n" + 0.001*GDS_ss2dBgrid_La1(gds), 0.001*GDS_ss2dBgrid_Lo1(gds), + GDS_ss2dBgrid_nx(gds)*GDS_ss2dBgrid_ny(gds), + 0.001*GDS_ss2dBgrid_dj(gds), 0.001*GDS_ss2dBgrid_di(gds), + 0.001*GDS_ss2dBgrid_Lo2(gds), 0.001*GDS_ss2dBgrid_La2(gds), + GDS_ss2dBgrid_scan(gds), GDS_ss2dBgrid_mode(gds)); + else if (gds && GDS_fEgrid(gds)) + printf(" filled Arakawa E-Grid: lat0 %f lon0 %f nxny %d\n" " dLat %f dLon %f (%d x %d) scan %d mode %d\n", - 0.001*GDS_fEgrid_La1(gds), 0.001*GDS_fEgrid_Lo1(gds), - GDS_fEgrid_n(gds)*GDS_fEgrid_n_dum(gds), - 0.001*GDS_fEgrid_dj(gds), 0.001*GDS_fEgrid_di(gds), - GDS_fEgrid_Lo2(gds), GDS_fEgrid_La2(gds), - GDS_fEgrid_scan(gds), GDS_fEgrid_mode(gds)); - else if (gds && GDS_RotLL(gds)) - printf(" rotated LatLon grid lat %f to %f lon %f to %f\n" - " nxny %ld (%d x %d) dx %d dy %d scan %d mode %d\n" - " transform: south pole lat %f lon %f rot angle %f\n", - 0.001*GDS_RotLL_La1(gds), 0.001*GDS_RotLL_La2(gds), - 0.001*GDS_RotLL_Lo1(gds), 0.001*GDS_RotLL_Lo2(gds), - nxny, GDS_RotLL_nx(gds), GDS_RotLL_ny(gds), - GDS_RotLL_dx(gds), GDS_RotLL_dy(gds), - GDS_RotLL_scan(gds), GDS_RotLL_mode(gds), - 0.001*GDS_RotLL_LaSP(gds), 0.001*GDS_RotLL_LoSP(gds), - GDS_RotLL_RotAng(gds) ); - else if (gds && GDS_Gnomonic(gds)) - printf(" Gnomonic grid\n"); - else if (gds && GDS_Harmonic(gds)) - printf(" Harmonic (spectral): pentagonal spectral truncation: nj %d nk %d nm %d\n", - GDS_Harmonic_nj(gds), GDS_Harmonic_nk(gds), - GDS_Harmonic_nm(gds)); - if (gds && GDS_Harmonic_type(gds) == 1) - printf(" Associated Legendre polynomials\n"); + 0.001*GDS_fEgrid_La1(gds), 0.001*GDS_fEgrid_Lo1(gds), + GDS_fEgrid_n(gds)*GDS_fEgrid_n_dum(gds), + 0.001*GDS_fEgrid_dj(gds), 0.001*GDS_fEgrid_di(gds), + GDS_fEgrid_Lo2(gds), GDS_fEgrid_La2(gds), + GDS_fEgrid_scan(gds), GDS_fEgrid_mode(gds)); + else if (gds && GDS_RotLL(gds)) + printf(" rotated LatLon grid lat %f to %f lon %f to %f\n" + " nxny %ld (%d x %d) dx %d dy %d scan %d mode %d\n" + " transform: south pole lat %f lon %f rot angle %f\n", + 0.001*GDS_RotLL_La1(gds), 0.001*GDS_RotLL_La2(gds), + 0.001*GDS_RotLL_Lo1(gds), 0.001*GDS_RotLL_Lo2(gds), + nxny, GDS_RotLL_nx(gds), GDS_RotLL_ny(gds), + GDS_RotLL_dx(gds), GDS_RotLL_dy(gds), + GDS_RotLL_scan(gds), GDS_RotLL_mode(gds), + 0.001*GDS_RotLL_LaSP(gds), 0.001*GDS_RotLL_LoSP(gds), + GDS_RotLL_RotAng(gds) ); + else if (gds && GDS_Gnomonic(gds)) + printf(" Gnomonic grid\n"); + else if (gds && GDS_Harmonic(gds)) + printf(" Harmonic (spectral): pentagonal spectral truncation: nj %d nk %d nm %d\n", + GDS_Harmonic_nj(gds), GDS_Harmonic_nk(gds), + GDS_Harmonic_nm(gds)); + if (gds && GDS_Harmonic_type(gds) == 1) + printf(" Associated Legendre polynomials\n"); else if (gds && GDS_Triangular(gds)) printf(" Triangular grid: nd %d ni %d (= 2^%d x 3^%d)\n", - GDS_Triangular_nd(gds), GDS_Triangular_ni(gds), - GDS_Triangular_ni2(gds), GDS_Triangular_ni3(gds) ); - if (print_PDS || print_PDS10) + GDS_Triangular_nd(gds), GDS_Triangular_ni(gds), + GDS_Triangular_ni2(gds), GDS_Triangular_ni3(gds) ); + if (print_PDS || print_PDS10) print_pds(pds, print_PDS, print_PDS10, verbose); - if (gds && (print_GDS || print_GDS10)) - print_gds(gds, print_GDS, print_GDS10, verbose); - } - - if (mode != INVENTORY && output_type == GRIB) { - if (header == dwd) wrtieee_header((int) len_grib, dump_file); - fwrite((void *) msg, sizeof(char), len_grib, dump_file); - if (header == dwd) wrtieee_header((int) len_grib, dump_file); - n_dump++; - } - - if ((mode != INVENTORY && output_type != GRIB) || verbose > 1) { - /* decode numeric data */ - + if (gds && (print_GDS || print_GDS10)) + print_gds(gds, print_GDS, print_GDS10, verbose); + } + + if (mode != INVENTORY && output_type == GRIB) { + if (header == dwd) wrtieee_header((int) len_grib, dump_file); + fwrite((void *) msg, sizeof(char), len_grib, dump_file); + if (header == dwd) wrtieee_header((int) len_grib, dump_file); + n_dump++; + } + + if ((mode != INVENTORY && output_type != GRIB) || verbose > 1) { + /* decode numeric data */ + if ((array = (float *) malloc(sizeof(float) * nxny)) == NULL) { fprintf(stderr,"memory problems\n"); exit(8); } - temp = int_power(10.0, - PDS_DecimalScale(pds)); - - BDS_unpack(array, bds, BMS_bitmap(bms), BDS_NumBits(bds), nxny, - temp*BDS_RefValue(bds),temp*int_power(2.0, BDS_BinScale(bds))); - - if (verbose > 1) { - rmin = FLT_MAX; - rmax = -FLT_MAX; - for (i = 0; i < nxny; i++) { - if (fabs(array[i]-UNDEFINED) > 0.0001*UNDEFINED) { - rmin = min(rmin,array[i]); - rmax = max(rmax,array[i]); - } - } - printf(" min/max data %g %g num bits %d " - " BDS_Ref %g DecScale %d BinScale %d\n", - rmin, rmax, BDS_NumBits(bds), BDS_RefValue(bds), - PDS_DecimalScale(pds), BDS_BinScale(bds)); - } - - if (mode != INVENTORY && output_type != GRIB) { - /* dump code */ - if (output_PDS_GDS == 1) { - /* insert code here */ - if (output_type == BINARY || output_type == IEEE) { - /* write PDS */ - i = PDS_LEN(pds) + 4; - if (header == simple && output_type == BINARY) - fwrite((void *) &i, sizeof(int), 1, dump_file); - if (header == simple && output_type == IEEE) wrtieee_header(i, dump_file); - fwrite((void *) "PDS ", 1, 4, dump_file); - fwrite((void *) pds, 1, i - 4, dump_file); - if (header == simple && output_type == BINARY) - fwrite((void *) &i, sizeof(int), 1, dump_file); - if (header == simple && output_type == IEEE) wrtieee_header(i, dump_file); - - /* write GDS */ - i = (gds) ? GDS_LEN(gds) + 4 : 4; - if (header == simple && output_type == BINARY) - fwrite((void *) &i, sizeof(int), 1, dump_file); - if (header == simple && output_type == IEEE) wrtieee_header(i, dump_file); - fwrite((void *) "GDS ", 1, 4, dump_file); - if (gds) fwrite((void *) gds, 1, i - 4, dump_file); - if (header == simple && output_type == BINARY) - fwrite((void *) &i, sizeof(int), 1, dump_file); - if (header == simple && output_type == IEEE) wrtieee_header(i, dump_file); - } - } - - if (output_type == BINARY) { - i = nxny * sizeof(float); - if (header == simple) fwrite((void *) &i, sizeof(int), 1, dump_file); - fwrite((void *) array, sizeof(float), nxny, dump_file); - if (header == simple) fwrite((void *) &i, sizeof(int), 1, dump_file); - } - else if (output_type == IEEE) { - wrtieee(array, nxny, header, dump_file); - } - else if (output_type == TEXT) { - /* number of points in grid */ - if (header == simple) { - if (nx <= 0 || ny <= 0 || nxny != nx*ny) { + temp = int_power(10.0, - PDS_DecimalScale(pds)); + + BDS_unpack(array, bds, BMS_bitmap(bms), BDS_NumBits(bds), nxny, + temp*BDS_RefValue(bds),temp*int_power(2.0, BDS_BinScale(bds))); + + if (verbose > 1) { + rmin = FLT_MAX; + rmax = -FLT_MAX; + for (i = 0; i < nxny; i++) { + if (fabs(array[i]-UNDEFINED) > 0.0001*UNDEFINED) { + rmin = min(rmin,array[i]); + rmax = max(rmax,array[i]); + } + } + printf(" min/max data %g %g num bits %d " + " BDS_Ref %g DecScale %d BinScale %d\n", + rmin, rmax, BDS_NumBits(bds), BDS_RefValue(bds), + PDS_DecimalScale(pds), BDS_BinScale(bds)); + } + + if (mode != INVENTORY && output_type != GRIB) { + /* dump code */ + if (output_PDS_GDS == 1) { + /* insert code here */ + if (output_type == BINARY || output_type == IEEE) { + /* write PDS */ + i = PDS_LEN(pds) + 4; + if (header == simple && output_type == BINARY) + fwrite((void *) &i, sizeof(int), 1, dump_file); + if (header == simple && output_type == IEEE) wrtieee_header(i, dump_file); + fwrite((void *) "PDS ", 1, 4, dump_file); + fwrite((void *) pds, 1, i - 4, dump_file); + if (header == simple && output_type == BINARY) + fwrite((void *) &i, sizeof(int), 1, dump_file); + if (header == simple && output_type == IEEE) wrtieee_header(i, dump_file); + + /* write GDS */ + i = (gds) ? GDS_LEN(gds) + 4 : 4; + if (header == simple && output_type == BINARY) + fwrite((void *) &i, sizeof(int), 1, dump_file); + if (header == simple && output_type == IEEE) wrtieee_header(i, dump_file); + fwrite((void *) "GDS ", 1, 4, dump_file); + if (gds) fwrite((void *) gds, 1, i - 4, dump_file); + if (header == simple && output_type == BINARY) + fwrite((void *) &i, sizeof(int), 1, dump_file); + if (header == simple && output_type == IEEE) wrtieee_header(i, dump_file); + } + } + + if (output_type == BINARY) { + i = nxny * sizeof(float); + if (header == simple) fwrite((void *) &i, sizeof(int), 1, dump_file); + fwrite((void *) array, sizeof(float), nxny, dump_file); + if (header == simple) fwrite((void *) &i, sizeof(int), 1, dump_file); + } + else if (output_type == IEEE) { + wrtieee(array, nxny, header, dump_file); + } + else if (output_type == TEXT) { + /* number of points in grid */ + if (header == simple) { + if (nx <= 0 || ny <= 0 || nxny != nx*ny) { fprintf(dump_file, "%ld %d\n", nxny, 1); - } - else { - fprintf(dump_file, "%d %d\n", nx, ny); - } - } - for (i = 0; i < nxny; i++) { - fprintf(dump_file,"%g\n", array[i]); - } - } - n_dump++; - } - free(array); - if (verbose > 0) printf("\n"); - } - - if (output_type != NONE) fflush(dump_file); - fflush(stdout); - + } + else { + fprintf(dump_file, "%d %d\n", nx, ny); + } + } + for (i = 0; i < nxny; i++) { + fprintf(dump_file,"%g\n", array[i]); + } + } + n_dump++; + } + free(array); + if (verbose > 0) printf("\n"); + } + + if (output_type != NONE) fflush(dump_file); + fflush(stdout); + pos += len_grib; count++; } if (mode != INVENTORY) { - if (header == dwd && output_type == GRIB) wrtieee_header(0, dump_file); - if (ferror(dump_file)) { - fprintf(stderr,"error writing %s\n",dump_file_name); - exit(8); - } + if (header == dwd && output_type == GRIB) wrtieee_header(0, dump_file); + if (ferror(dump_file)) { + fprintf(stderr,"error writing %s\n",dump_file_name); + exit(8); + } } fclose(input); return (return_code); @@ -1280,8 +1279,8 @@ void print_gds(unsigned char *gds, int print_GDS, int print_GDS10, int verbose) * v1.1 9/94 Wesley Ebisuzaki * v1.2 3/96 Wesley Ebisuzaki handles short records at end of file * v1.3 8/96 Wesley Ebisuzaki increase NTRY from 3 to 100 for the folks - * at Automation decided a 21 byte WMO bulletin header wasn't long - * enough and decided to go to an 8K header. + * at Automation decided a 21 byte WMO bulletin header wasn't long + * enough and decided to go to an 8K header. * v1.4 11/10/2001 D. Haalman, looks at entire file, does not try * to read past EOF * 3/8/2010 echack added by Brian Doty @@ -1289,7 +1288,7 @@ void print_gds(unsigned char *gds, int print_GDS, int print_GDS10, int verbose) */ #ifndef min -#define min(a,b) ((a) < (b) ? (a) : (b)) + #define min(a,b) ((a) < (b) ? (a) : (b)) #endif /* #define LEN_HEADER_PDS (28+42+100) */ @@ -1297,8 +1296,8 @@ void print_gds(unsigned char *gds, int print_GDS, int print_GDS10, int verbose) int ec_large_grib = 0, len_ec_bds; -unsigned char *seek_grib(FILE *file, unsigned long *pos, long *len_grib, - unsigned char *buffer, unsigned int buf_len) { +unsigned char *seek_grib(FILE *file, unsigned long *pos, long *len_grib, + unsigned char *buffer, unsigned int buf_len) { int i, len; long length_grib; @@ -1307,36 +1306,36 @@ unsigned char *seek_grib(FILE *file, unsigned long *pos, long *len_grib, while ( !feof(file) ) { if (fseek(file, *pos, SEEK_SET) == -1) break; - i = fread(buffer, sizeof (unsigned char), buf_len, file); + i = fread(buffer, sizeof (unsigned char), buf_len, file); if (ferror(file)) break; len = i - LEN_HEADER_PDS; - + for (i = 0; i < len; i++) { if (buffer[i] == 'G' && buffer[i+1] == 'R' && buffer[i+2] == 'I' && buffer[i+3] == 'B') { - /* grib edition 1 */ - if (buffer[i+7] == 1) { + /* grib edition 1 */ + if (buffer[i+7] == 1) { *pos = i + *pos; *len_grib = length_grib = (buffer[i+4] << 16) + (buffer[i+5] << 8) + - buffer[i+6]; + buffer[i+6]; - /* small records don't have ECMWF hack */ - if ((length_grib & 0x800000) == 0) { ec_large_grib = 0; return (buffer + i); } + /* small records don't have ECMWF hack */ + if ((length_grib & 0x800000) == 0) { ec_large_grib = 0; return (buffer + i); } - /* potential for ECMWF hack */ - ec_large_grib = 1; - *len_grib = echack(file, *pos, length_grib); + /* potential for ECMWF hack */ + ec_large_grib = 1; + *len_grib = echack(file, *pos, length_grib); return (buffer+i); - } + } - /* grib edition 2 */ - else if (buffer[i+7] == 2) { - if (warn_grib2++ == 0) fprintf(stderr,"grib2 message ignored (use wgrib2)\n"); - } + /* grib edition 2 */ + else if (buffer[i+7] == 2) { + if (warn_grib2++ == 0) fprintf(stderr,"grib2 message ignored (use wgrib2)\n"); + } } } - *pos = *pos + (buf_len - LEN_HEADER_PDS); + *pos = *pos + (buf_len - LEN_HEADER_PDS); } *len_grib = 0; @@ -1369,7 +1368,7 @@ long echack(FILE *file, long pos, long len_grib) { /* know that NCEP and CMC do not use echack */ if (center == NMC || center == CMC) { - ec_large_grib = 0; + ec_large_grib = 0; return len_grib; } @@ -1388,9 +1387,9 @@ long echack(FILE *file, long pos, long len_grib) { bmslen = 0; if (bmsflg) { - if (fseek(file, pos+8+pdslen+gdslen, SEEK_SET) == -1) return 0; - if (fread(buf, sizeof (unsigned char), 3, file) != 3) return 0; - bmslen = __LEN24(buf); + if (fseek(file, pos+8+pdslen+gdslen, SEEK_SET) == -1) return 0; + if (fread(buf, sizeof (unsigned char), 3, file) != 3) return 0; + bmslen = __LEN24(buf); } /* get bds length */ @@ -1402,14 +1401,14 @@ long echack(FILE *file, long pos, long len_grib) { /* Now we can check if this record is hacked */ if (bdslen >= 120) { - /* normal record */ - ec_large_grib = 0; + /* normal record */ + ec_large_grib = 0; } else { /* ECMWF hack */ len_grib = (len & 0x7fffff) * 120 - bdslen + 4; len_ec_bds = len_grib - (12 + pdslen + gdslen + bmslen); - ec_large_grib = 1; + ec_large_grib = 1; } return len_grib; } @@ -1424,36 +1423,36 @@ long echack(FILE *file, long pos, long len_grib) { double ibm2flt(unsigned char *ibm) { - int positive, power; - unsigned int abspower; - long int mant; - double value, exp; - - mant = (ibm[1] << 16) + (ibm[2] << 8) + ibm[3]; - if (mant == 0) return 0.0; - - positive = (ibm[0] & 0x80) == 0; - power = (int) (ibm[0] & 0x7f) - 64; - abspower = power > 0 ? power : -power; - - - /* calc exp */ - exp = 16.0; - value = 1.0; - while (abspower) { - if (abspower & 1) { - value *= exp; - } - exp = exp * exp; - abspower >>= 1; - } - - if (power < 0) value = 1.0 / value; - value = value * mant / 16777216.0; - if (positive == 0) value = -value; - return value; + int positive, power; + unsigned int abspower; + long int mant; + double value, exp; + + mant = (ibm[1] << 16) + (ibm[2] << 8) + ibm[3]; + if (mant == 0) return 0.0; + + positive = (ibm[0] & 0x80) == 0; + power = (int) (ibm[0] & 0x7f) - 64; + abspower = power > 0 ? power : -power; + + + /* calc exp */ + exp = 16.0; + value = 1.0; + while (abspower) { + if (abspower & 1) { + value *= exp; + } + exp = exp * exp; + abspower >>= 1; + } + + if (power < 0) value = 1.0 / value; + value = value * mant / 16777216.0; + if (positive == 0) value = -value; + return value; } - + /* * read_grib.c * @@ -1475,7 +1474,7 @@ int read_grib(FILE *file, long pos, long len_grib, unsigned char *buffer) { if (fseek(file, pos, SEEK_SET) == -1) { - return 0; + return 0; } i = fread(buffer, sizeof (unsigned char), len_grib, file); @@ -1489,29 +1488,29 @@ int read_grib(FILE *file, long pos, long len_grib, unsigned char *buffer) { * * * input: double x - * int y + * int y */ double int_power(double x, int y) { - double value; - - if (y < 0) { - y = -y; - x = 1.0 / x; - } - value = 1.0; - - while (y) { - if (y & 1) { - value *= x; - } - x = x * x; - y >>= 1; - } - return value; + double value; + + if (y < 0) { + y = -y; + x = 1.0 / x; + } + value = 1.0; + + while (y) { + if (y & 1) { + value *= x; + } + x = x * x; + y >>= 1; + } + return value; } -/* cnames.c Wesley Ebisuzaki +/* cnames.c Wesley Ebisuzaki * * returns strings with either variable name or comment field * v1.4 4/98 @@ -1520,7 +1519,7 @@ double int_power(double x, int y) { * Add DWD tables 2, 201, 202, 203 Helmut P. Frank, DWD, FE13 * Thu Aug 23 09:28:34 GMT 2001 * add DWD tables 204, 205 H. Frank, 10-19-2005 - * LAMI => DWD 11/2008 Davide Sacchetti + * LAMI => DWD 11/2008 Davide Sacchetti * add JRA-55 table 200 */ @@ -1595,22 +1594,22 @@ static const struct ParmTable *Parm_Table(unsigned char *pds) { #endif /* figure out if NCEP opn or reanalysis */ if (center == NMC && ptable <= 3) { - if (subcenter == 1) return &parm_table_ncep_reanal[0]; - if (subcenter == 14) return &parm_table_mdl_nceptab[0]; + if (subcenter == 1) return &parm_table_ncep_reanal[0]; + if (subcenter == 14) return &parm_table_mdl_nceptab[0]; process = PDS_Model(pds); - if (subcenter != 0 || (process != 80 && process != 180) || - (ptable != 1 && ptable != 2)) + if (subcenter != 0 || (process != 80 && process != 180) || + (ptable != 1 && ptable != 2)) return &parm_table_ncep_opn[0]; - /* at this point could be either the opn or reanalysis table */ - if (def_ncep_table == opn_nowarn) return &parm_table_ncep_opn[0]; - if (def_ncep_table == rean_nowarn) return &parm_table_ncep_reanal[0]; + /* at this point could be either the opn or reanalysis table */ + if (def_ncep_table == opn_nowarn) return &parm_table_ncep_opn[0]; + if (def_ncep_table == rean_nowarn) return &parm_table_ncep_reanal[0]; if (reanal_opn_count++ == 0) { - fprintf(stderr, "Using NCEP %s table, see -ncep_opn, -ncep_rean options\n", - (def_ncep_table == opn) ? "opn" : "reanalysis"); - } - return (def_ncep_table == opn) ? &parm_table_ncep_opn[0] - : &parm_table_ncep_reanal[0]; + fprintf(stderr, "Using NCEP %s table, see -ncep_opn, -ncep_rean options\n", + (def_ncep_table == opn) ? "opn" : "reanalysis"); + } + return (def_ncep_table == opn) ? &parm_table_ncep_opn[0] + : &parm_table_ncep_reanal[0]; } if (center == NMC) { @@ -1657,10 +1656,10 @@ static const struct ParmTable *Parm_Table(unsigned char *pds) { if (ptable == 205) return &parm_table_dwd_205[0]; } if (center == CPTEC) { - if (ptable == 254) return &parm_table_cptec_254[0]; + if (ptable == 254) return &parm_table_cptec_254[0]; } if (center == JMA) { - if (ptable == 200) return &parm_table_jra55_200[0]; + if (ptable == 200) return &parm_table_jra55_200[0]; } @@ -1670,9 +1669,9 @@ static const struct ParmTable *Parm_Table(unsigned char *pds) { #endif if ((ptable > 3 || (PDS_PARAM(pds)) > 127) && missing_count++ == 0) { - fprintf(stderr, - "\nUndefined parameter table (center %d-%d table %d), using NCEP-opn\n", - center, subcenter, ptable); + fprintf(stderr, + "\nUndefined parameter table (center %d-%d table %d), using NCEP-opn\n", + center, subcenter, ptable); } return &parm_table_ncep_opn[0]; } @@ -1695,7 +1694,7 @@ char *k5_comments(unsigned char *pds) { return (Parm_Table(pds) + PDS_PARAM(pds))->comment; } -/* 1996 wesley ebisuzaki +/* 1996 wesley ebisuzaki * * Unpack BDS section * @@ -1711,8 +1710,8 @@ char *k5_comments(unsigned char *pds) { * * 7/98 v1.2.1 fix bug for bitmaps and nbit >= 25 found by Larry Brasfield * 2/01 v1.2.2 changed jj from long int to double - * 3/02 v1.2.3 added unpacking extensions for spectral data - * Luis Kornblueh, MPIfM + * 3/02 v1.2.3 added unpacking extensions for spectral data + * Luis Kornblueh, MPIfM * 7/06 v.1.2.4 fixed some bug complex packed data was not set to undefined */ @@ -1721,7 +1720,7 @@ static unsigned int map_masks[8] = {128, 64, 32, 16, 8, 4, 2, 1}; static double shift[9] = {1.0, 2.0, 4.0, 8.0, 16.0, 32.0, 64.0, 128.0, 256.0}; void BDS_unpack(float *flt, unsigned char *bds, unsigned char *bitmap, - int n_bits, int n, double ref, double scale) { + int n_bits, int n, double ref, double scale) { unsigned char *bits; @@ -1731,22 +1730,22 @@ void BDS_unpack(float *flt, unsigned char *bds, unsigned char *bitmap, if (BDS_ComplexPacking(bds)) { - fprintf(stderr,"*** Cannot decode complex packed fields n=%d***\n", n); - exit(8); - for (i = 0; i < n; i++) { - *flt++ = UNDEFINED; - } - return; + fprintf(stderr,"*** Cannot decode complex packed fields n=%d***\n", n); + exit(8); + for (i = 0; i < n; i++) { + *flt++ = UNDEFINED; + } + return; } if (BDS_Harmonic(bds)) { bits = bds + 15; /* fill in global mean */ *flt++ = BDS_Harmonic_RefValue(bds); - n -= 1; + n -= 1; } else { - bits = bds + 11; + bits = bds + 11; } tbits = bbits = 0; @@ -1757,31 +1756,31 @@ void BDS_unpack(float *flt, unsigned char *bds, unsigned char *bitmap, t_bits = 0; if (bitmap) { - for (i = 0; i < n; i++) { - /* check bitmap */ - mask_idx = i & 7; - if (mask_idx == 0) bbits = *bitmap++; - if ((bbits & map_masks[mask_idx]) == 0) { - *flt++ = UNDEFINED; - continue; - } - - while (t_bits < n_bits) { - tbits = (tbits * 256) + *bits++; - t_bits += 8; - } - t_bits -= n_bits; - j = (tbits >> t_bits) & jmask; - *flt++ = ref + scale*j; + for (i = 0; i < n; i++) { + /* check bitmap */ + mask_idx = i & 7; + if (mask_idx == 0) bbits = *bitmap++; + if ((bbits & map_masks[mask_idx]) == 0) { + *flt++ = UNDEFINED; + continue; + } + + while (t_bits < n_bits) { + tbits = (tbits * 256) + *bits++; + t_bits += 8; + } + t_bits -= n_bits; + j = (tbits >> t_bits) & jmask; + *flt++ = ref + scale*j; } } else { - for (i = 0; i < n; i++) { - if (n_bits - t_bits > 8) { + for (i = 0; i < n; i++) { + if (n_bits - t_bits > 8) { tbits = (tbits << 16) | (bits[0] << 8) | (bits[1]); - bits += 2; + bits += 2; t_bits += 16; - } + } while (t_bits < n_bits) { tbits = (tbits * 256) + *bits++; t_bits += 8; @@ -1789,48 +1788,48 @@ void BDS_unpack(float *flt, unsigned char *bds, unsigned char *bitmap, t_bits -= n_bits; flt[i] = (tbits >> t_bits) & jmask; } - /* at least this vectorizes :) */ - for (i = 0; i < n; i++) { - flt[i] = ref + scale*flt[i]; - } + /* at least this vectorizes :) */ + for (i = 0; i < n; i++) { + flt[i] = ref + scale*flt[i]; + } } } else { - /* older unoptimized code, not often used */ + /* older unoptimized code, not often used */ c_bits = 8; map_mask = 128; while (n-- > 0) { - if (bitmap) { - j = (*bitmap & map_mask); - if ((map_mask >>= 1) == 0) { - map_mask = 128; - bitmap++; - } - if (j == 0) { - *flt++ = UNDEFINED; - continue; - } - } - - jj = 0.0; - j_bits = n_bits; - while (c_bits <= j_bits) { - if (c_bits == 8) { - jj = jj * 256.0 + (double) (*bits++); - j_bits -= 8; - } - else { - jj = (jj * shift[c_bits]) + (double) (*bits & mask[c_bits]); - bits++; - j_bits -= c_bits; - c_bits = 8; - } - } - if (j_bits) { - c_bits -= j_bits; - jj = (jj * shift[j_bits]) + (double) ((*bits >> c_bits) & mask[j_bits]); - } - *flt++ = ref + scale*jj; + if (bitmap) { + j = (*bitmap & map_mask); + if ((map_mask >>= 1) == 0) { + map_mask = 128; + bitmap++; + } + if (j == 0) { + *flt++ = UNDEFINED; + continue; + } + } + + jj = 0.0; + j_bits = n_bits; + while (c_bits <= j_bits) { + if (c_bits == 8) { + jj = jj * 256.0 + (double) (*bits++); + j_bits -= 8; + } + else { + jj = (jj * shift[c_bits]) + (double) (*bits & mask[c_bits]); + bits++; + j_bits -= c_bits; + c_bits = 8; + } + } + if (j_bits) { + c_bits -= j_bits; + jj = (jj * shift[j_bits]) + (double) ((*bits >> c_bits) & mask[j_bits]); + } + *flt++ = ref + scale*jj; } } return; @@ -1847,55 +1846,55 @@ void BDS_unpack(float *flt, unsigned char *bds, unsigned char *bitmap, int flt2ieee(float x, unsigned char *ieee) { - int sign, exp; - unsigned int umant; - double mant; - - if (x == 0.0) { - ieee[0] = ieee[1] = ieee[2] = ieee[3] = 0; - return 0; - } - - /* sign bit */ - if (x < 0.0) { - sign = 128; - x = -x; - } - else sign = 0; - mant = frexp((double) x, &exp); - - /* 2^24 = 16777216 */ - - umant = mant * 16777216 + 0.5; - if (umant >= 16777216) { - umant = umant / 2; - exp++; - } - /* bit 24 should be a 1 .. not used in ieee format */ - - exp = exp - 1 + 127; - - if (exp < 0) { - /* signed zero */ - ieee[0] = sign; - ieee[1] = ieee[2] = ieee[3] = 0; - return 0; - } - if (exp > 255) { - /* signed infinity */ - ieee[0] = sign + 127; - ieee[1] = 128; - ieee[2] = ieee[3] = 0; - return 0; - } - /* normal number */ - - ieee[0] = sign + (exp >> 1); - - ieee[3] = umant & 255; - ieee[2] = (umant >> 8) & 255; - ieee[1] = ((exp & 1) << 7) + ((umant >> 16) & 127); - return 0; + int sign, exp; + unsigned int umant; + double mant; + + if (x == 0.0) { + ieee[0] = ieee[1] = ieee[2] = ieee[3] = 0; + return 0; + } + + /* sign bit */ + if (x < 0.0) { + sign = 128; + x = -x; + } + else sign = 0; + mant = frexp((double) x, &exp); + + /* 2^24 = 16777216 */ + + umant = mant * 16777216 + 0.5; + if (umant >= 16777216) { + umant = umant / 2; + exp++; + } + /* bit 24 should be a 1 .. not used in ieee format */ + + exp = exp - 1 + 127; + + if (exp < 0) { + /* signed zero */ + ieee[0] = sign; + ieee[1] = ieee[2] = ieee[3] = 0; + return 0; + } + if (exp > 255) { + /* signed infinity */ + ieee[0] = sign + 127; + ieee[1] = 128; + ieee[2] = ieee[3] = 0; + return 0; + } + /* normal number */ + + ieee[0] = sign + (exp >> 1); + + ieee[3] = umant & 255; + ieee[2] = (umant >> 8) & 255; + ieee[1] = ((exp & 1) << 7) + ((umant >> 16) & 127); + return 0; } @@ -1903,11 +1902,11 @@ int flt2ieee(float x, unsigned char *ieee) { * * write ieee file -- big endian format * - * input float *array data to be written - * int n size of array - * int header 1 for f77 style header 0 for none - * (header is 4 byte header - * FILE *output output file + * input float *array data to be written + * int n size of array + * int header 1 for f77 style header 0 for none + * (header is 4 byte header + * FILE *output output file * * v1.2 7/97 buffered, faster * v1.3 2/99 fixed (typo) error in wrtieee_header found by @@ -1918,62 +1917,62 @@ int flt2ieee(float x, unsigned char *ieee) { int wrtieee(float *array, int n, int header, FILE *output) { - unsigned long int l; - int i, nbuf; - unsigned char buff[BSIZ]; - unsigned char h4[4]; - - nbuf = 0; - h4[0] = h4[1] = h4[2] = h4[3] = 0; - if (header) { - l = n * 4; - for (i = 0; i < 4; i++) { - h4[i] = l & 255; - l >>= 8; - } - buff[nbuf++] = h4[3]; - buff[nbuf++] = h4[2]; - buff[nbuf++] = h4[1]; - buff[nbuf++] = h4[0]; - } - for (i = 0; i < n; i++) { - if (nbuf >= BSIZ) { - fwrite(buff, 1, BSIZ, output); - nbuf = 0; - } - flt2ieee(array[i], buff + nbuf); - nbuf += 4; - } - if (header) { - if (nbuf == BSIZ) { - fwrite(buff, 1, BSIZ, output); - nbuf = 0; - } - buff[nbuf++] = h4[3]; - buff[nbuf++] = h4[2]; - buff[nbuf++] = h4[1]; - buff[nbuf++] = h4[0]; - } - if (nbuf) fwrite(buff, 1, nbuf, output); - return 0; + unsigned long int l; + int i, nbuf; + unsigned char buff[BSIZ]; + unsigned char h4[4]; + + nbuf = 0; + h4[0] = h4[1] = h4[2] = h4[3] = 0; + if (header) { + l = n * 4; + for (i = 0; i < 4; i++) { + h4[i] = l & 255; + l >>= 8; + } + buff[nbuf++] = h4[3]; + buff[nbuf++] = h4[2]; + buff[nbuf++] = h4[1]; + buff[nbuf++] = h4[0]; + } + for (i = 0; i < n; i++) { + if (nbuf >= BSIZ) { + fwrite(buff, 1, BSIZ, output); + nbuf = 0; + } + flt2ieee(array[i], buff + nbuf); + nbuf += 4; + } + if (header) { + if (nbuf == BSIZ) { + fwrite(buff, 1, BSIZ, output); + nbuf = 0; + } + buff[nbuf++] = h4[3]; + buff[nbuf++] = h4[2]; + buff[nbuf++] = h4[1]; + buff[nbuf++] = h4[0]; + } + if (nbuf) fwrite(buff, 1, nbuf, output); + return 0; } /* write a big-endian 4 byte integer .. f77 IEEE header */ int wrtieee_header(unsigned int n, FILE *output) { - unsigned h4[4]; + unsigned h4[4]; - h4[0] = n & 255; - h4[1] = (n >> 8) & 255; - h4[2] = (n >> 16) & 255; - h4[3] = (n >> 24) & 255; + h4[0] = n & 255; + h4[1] = (n >> 8) & 255; + h4[2] = (n >> 16) & 255; + h4[3] = (n >> 24) & 255; - putc(h4[3],output); - putc(h4[2],output); - putc(h4[1],output); - putc(h4[0],output); + putc(h4[3],output); + putc(h4[2],output); + putc(h4[1],output); + putc(h4[0],output); - return 0; + return 0; } @@ -1988,7 +1987,7 @@ int wrtieee_header(unsigned int n, FILE *output) { * (kpds values are from NMC's grib routines) * center = PDS_Center(pds) .. NMC, ECMWF, etc * - * the description of the levels is + * the description of the levels is * (1) incomplete * (2) include some NMC-only values (>= 200?) * @@ -2003,201 +2002,201 @@ int wrtieee_header(unsigned int n, FILE *output) { void levels(int kpds6, int kpds7, int center, int verbose) { - int o11, o12; - - /* octets 11 and 12 */ - o11 = kpds7 / 256; - o12 = kpds7 % 256; - - - switch (kpds6) { - - case 1: printf("sfc"); - break; - case 2: printf("cld base"); - break; - case 3: printf("cld top"); - break; - case 4: printf("0C isotherm"); - break; - case 5: printf("cond lev"); - break; - case 6: printf("max wind lev"); - break; - case 7: printf("tropopause"); - break; - case 8: printf("nom. top"); - break; - case 9: printf("sea bottom"); - break; - case 200: - case 10: printf("atmos col"); - break; - - case 12: printf("low cld bot"); - break; - - case 13: printf("low cld top"); - break; - case 14: printf("low cld lay"); - break; - case 20: - if (verbose == 2) printf("temp=%fK", kpds7/100.0); - else printf("T=%fK", kpds7/100.0); - break; - case 22: - case 222: printf("mid cld bot"); - break; - case 23: - case 223: printf("mid cld top"); - break; - case 24: - case 224: printf("mid cld lay"); - break; - case 32: - case 232: printf("high cld bot"); - break; - case 33: - case 233: printf("high cld top"); - break; - case 34: - case 234: printf("high cld lay"); - break; - - case 201: printf("ocean column"); - break; - case 204: printf("high trop freezing lvl"); - break; - case 206: printf("grid-scale cld bot"); - break; - case 207: printf("grid-scale cld top"); - break; - case 209: printf("bndary-layer cld bot"); - break; - case 210: - if (center == NMC) printf("bndary-layer cld top"); - else printf("%.2f mb",kpds7*0.01); - break; - case 211: - if (center == JMA) printf("soil column"); - else printf("bndary-layer cld layer"); - break; - case 212: - if (center == JMA) printf("bot land sfc model"); - else printf("low cld bot"); - break; - case 213: - if (center == JMA) printf("soil layer %d",kpds7); - else printf("low cld top"); - break; - case 214: printf("low cld lay"); - break; - case 215: printf("cloud ceiling"); - break; - case 216: printf("Cb base"); - break; - case 217: printf("Cb top"); - break; - case 220: printf("planetary boundary layer (from Richardson no.)"); - break; - case 235: if (kpds7 % 10 == 0) - printf("%dC ocean isotherm level",kpds7/10); - else printf("%.1fC ocean isotherm level",kpds7/10.0); - break; - case 236: printf("%d-%dm ocean layer",o11*10,o12*10); - break; - case 237: printf("ocean mixed layer bot"); - break; - case 238: printf("ocean isothermal layer bot"); - break; - case 239: printf("sfc-26C ocean layer"); - break; - case 240: printf("ocean mixed layer"); - break; - case 241: printf("ordered sequence of data"); - break; - case 242: printf("convect-cld bot"); - break; - case 243: printf("convect-cld top"); - break; - case 244: printf("convect-cld layer"); - break; - case 245: printf("lowest level of wet bulb zero"); - break; - case 246: printf("max e-pot-temp lvl"); - break; - case 247: printf("equilibrium lvl"); - break; - case 248: printf("shallow convect-cld bot"); - break; - case 249: printf("shallow convect-cld top"); - break; - case 251: printf("deep convect-cld bot"); - break; - case 252: printf("deep convect-cld top"); - break; - case 253: printf("lowest bottom level of supercooled liequid water layer"); - break; - case 254: printf("highest top level of supercooled liquid water layer"); - break; - case 100: printf("%d mb",kpds7); - break; - case 101: printf("%d-%d mb",o11*10,o12*10); - break; - case 102: printf("MSL"); - break; - case 103: printf("%d m above MSL",kpds7); - break; - case 104: printf("%d-%d m above msl",o11*100,o12*100); - break; - case 105: printf("%d m above gnd",kpds7); - break; - case 106: printf("%d-%d m above gnd",o11*100,o12*100); - break; - case 107: printf("sigma=%.4f",kpds7/10000.0); - break; - case 108: printf("sigma %.2f-%.2f",o11/100.0,o12/100.0); - break; - case 109: printf("hybrid lev %d",kpds7); - break; - case 110: printf("hybrid %d-%d",o11,o12); - break; - case 111: printf("%d cm down",kpds7); - break; - case 112: printf("%d-%d cm down",o11,o12); - break; - case 113: - if (verbose == 2) printf("pot-temp=%dK",kpds7); - else printf("%dK",kpds7); - break; - case 114: printf("%d-%dK",475-o11,475-o12); - break; - case 115: printf("%d mb above gnd",kpds7); - break; - case 116: printf("%d-%d mb above gnd",o11,o12); - break; - case 117: printf("%d pv units",INT2(o11,o12)); /* units are suspect */ - break; - case 119: printf("%.5f (ETA level)",kpds7/10000.0); - break; - case 120: printf("%.2f-%.2f (ETA levels)",o11/100.0,o12/100.0); - break; - case 121: printf("%d-%d mb",1100-o11,1100-o12); - break; - case 125: printf("%d cm above gnd",kpds7); - break; - case 126: - if (center == NMC) printf("%.2f mb",kpds7*0.01); - break; - case 128: printf("%.3f-%.3f (sigma)",1.1-o11/1000.0, 1.1-o12/1000.0); - break; - case 141: printf("%d-%d mb",o11*10,1100-o12); - break; - case 160: printf("%d m below sea level",kpds7); - break; - default: - break; - } + int o11, o12; + + /* octets 11 and 12 */ + o11 = kpds7 / 256; + o12 = kpds7 % 256; + + + switch (kpds6) { + + case 1: printf("sfc"); + break; + case 2: printf("cld base"); + break; + case 3: printf("cld top"); + break; + case 4: printf("0C isotherm"); + break; + case 5: printf("cond lev"); + break; + case 6: printf("max wind lev"); + break; + case 7: printf("tropopause"); + break; + case 8: printf("nom. top"); + break; + case 9: printf("sea bottom"); + break; + case 200: + case 10: printf("atmos col"); + break; + + case 12: printf("low cld bot"); + break; + + case 13: printf("low cld top"); + break; + case 14: printf("low cld lay"); + break; + case 20: + if (verbose == 2) printf("temp=%fK", kpds7/100.0); + else printf("T=%fK", kpds7/100.0); + break; + case 22: + case 222: printf("mid cld bot"); + break; + case 23: + case 223: printf("mid cld top"); + break; + case 24: + case 224: printf("mid cld lay"); + break; + case 32: + case 232: printf("high cld bot"); + break; + case 33: + case 233: printf("high cld top"); + break; + case 34: + case 234: printf("high cld lay"); + break; + + case 201: printf("ocean column"); + break; + case 204: printf("high trop freezing lvl"); + break; + case 206: printf("grid-scale cld bot"); + break; + case 207: printf("grid-scale cld top"); + break; + case 209: printf("bndary-layer cld bot"); + break; + case 210: + if (center == NMC) printf("bndary-layer cld top"); + else printf("%.2f mb",kpds7*0.01); + break; + case 211: + if (center == JMA) printf("soil column"); + else printf("bndary-layer cld layer"); + break; + case 212: + if (center == JMA) printf("bot land sfc model"); + else printf("low cld bot"); + break; + case 213: + if (center == JMA) printf("soil layer %d",kpds7); + else printf("low cld top"); + break; + case 214: printf("low cld lay"); + break; + case 215: printf("cloud ceiling"); + break; + case 216: printf("Cb base"); + break; + case 217: printf("Cb top"); + break; + case 220: printf("planetary boundary layer (from Richardson no.)"); + break; + case 235: if (kpds7 % 10 == 0) + printf("%dC ocean isotherm level",kpds7/10); + else printf("%.1fC ocean isotherm level",kpds7/10.0); + break; + case 236: printf("%d-%dm ocean layer",o11*10,o12*10); + break; + case 237: printf("ocean mixed layer bot"); + break; + case 238: printf("ocean isothermal layer bot"); + break; + case 239: printf("sfc-26C ocean layer"); + break; + case 240: printf("ocean mixed layer"); + break; + case 241: printf("ordered sequence of data"); + break; + case 242: printf("convect-cld bot"); + break; + case 243: printf("convect-cld top"); + break; + case 244: printf("convect-cld layer"); + break; + case 245: printf("lowest level of wet bulb zero"); + break; + case 246: printf("max e-pot-temp lvl"); + break; + case 247: printf("equilibrium lvl"); + break; + case 248: printf("shallow convect-cld bot"); + break; + case 249: printf("shallow convect-cld top"); + break; + case 251: printf("deep convect-cld bot"); + break; + case 252: printf("deep convect-cld top"); + break; + case 253: printf("lowest bottom level of supercooled liequid water layer"); + break; + case 254: printf("highest top level of supercooled liquid water layer"); + break; + case 100: printf("%d mb",kpds7); + break; + case 101: printf("%d-%d mb",o11*10,o12*10); + break; + case 102: printf("MSL"); + break; + case 103: printf("%d m above MSL",kpds7); + break; + case 104: printf("%d-%d m above msl",o11*100,o12*100); + break; + case 105: printf("%d m above gnd",kpds7); + break; + case 106: printf("%d-%d m above gnd",o11*100,o12*100); + break; + case 107: printf("sigma=%.4f",kpds7/10000.0); + break; + case 108: printf("sigma %.2f-%.2f",o11/100.0,o12/100.0); + break; + case 109: printf("hybrid lev %d",kpds7); + break; + case 110: printf("hybrid %d-%d",o11,o12); + break; + case 111: printf("%d cm down",kpds7); + break; + case 112: printf("%d-%d cm down",o11,o12); + break; + case 113: + if (verbose == 2) printf("pot-temp=%dK",kpds7); + else printf("%dK",kpds7); + break; + case 114: printf("%d-%dK",475-o11,475-o12); + break; + case 115: printf("%d mb above gnd",kpds7); + break; + case 116: printf("%d-%d mb above gnd",o11,o12); + break; + case 117: printf("%d pv units",INT2(o11,o12)); /* units are suspect */ + break; + case 119: printf("%.5f (ETA level)",kpds7/10000.0); + break; + case 120: printf("%.2f-%.2f (ETA levels)",o11/100.0,o12/100.0); + break; + case 121: printf("%d-%d mb",1100-o11,1100-o12); + break; + case 125: printf("%d cm above gnd",kpds7); + break; + case 126: + if (center == NMC) printf("%.2f mb",kpds7*0.01); + break; + case 128: printf("%.3f-%.3f (sigma)",1.1-o11/1000.0, 1.1-o12/1000.0); + break; + case 141: printf("%d-%d mb",o11*10,1100-o12); + break; + case 160: printf("%d m below sea level",kpds7); + break; + default: + break; + } } /* @@ -2216,233 +2215,233 @@ void levels(int kpds6, int kpds7, int center, int verbose) { */ static char *units[] = { - "min", "hr", "d", "mon", "yr", - "decade", "normal", "century", "??", "??", " x3 hours", " x6 hours", - " x12 hours", - "x15 min", "x30 min", "??", "??", "??", "??", "??", "??", "??", "??", - "??", "??", "??", "??", "??", "??", "??", "??", "??", "??", - "??", "??", "??", "??", "??", "??", "??", "??", "??", "??", - "??", "??", "??", "??", "??", "??", "??", "??", "??", "??", - "??", "??", "??", "??", "??", "??", "??", "??", "??", "??", - "??", "??", "??", "??", "??", "??", "??", "??", "??", "??", - "??", "??", "??", "??", "??", "??", "??", "??", "??", "??", - "??", "??", "??", "??", "??", "??", "??", "??", "??", "??", - "??", "??", "??", "??", "??", "??", "??", "??", "??", "??", - "??", "??", "??", "??", "??", "??", "??", "??", "??", "??", - "??", "??", "??", "??", "??", "??", "??", "??", "??", "??", - "??", "??", "??", "??", "??", "??", "??", "??", "??", "??", - "??", "??", "??", "??", "??", "??", "??", "??", "??", "??", - "??", "??", "??", "??", "??", "??", "??", "??", "??", "??", - "??", "??", "??", "??", "??", "??", "??", "??", "??", "??", - "??", "??", "??", "??", "??", "??", "??", "??", "??", "??", - "??", "??", "??", "??", "??", "??", "??", "??", "??", "??", - "??", "??", "??", "??", "??", "??", "??", "??", "??", "??", - "??", "??", "??", "??", "??", "??", "??", "??", "??", "??", - "??", "??", "??", "??", "??", "??", "??", "??", "??", "??", - "??", "??", "??", "??", "??", "??", "??", "??", "??", "??", - "??", "??", "??", "??", "??", "??", "??", "??", "??", "??", - "??", "??", "??", "??", "??", "??", "??", "??", "??", "??", - "??", "??", "??", "??", "??", "??", "??", "??", "??", "??", - "??", " sec"}; + "min", "hr", "d", "mon", "yr", + "decade", "normal", "century", "??", "??", " x3 hours", " x6 hours", + " x12 hours", + "x15 min", "x30 min", "??", "??", "??", "??", "??", "??", "??", "??", + "??", "??", "??", "??", "??", "??", "??", "??", "??", "??", + "??", "??", "??", "??", "??", "??", "??", "??", "??", "??", + "??", "??", "??", "??", "??", "??", "??", "??", "??", "??", + "??", "??", "??", "??", "??", "??", "??", "??", "??", "??", + "??", "??", "??", "??", "??", "??", "??", "??", "??", "??", + "??", "??", "??", "??", "??", "??", "??", "??", "??", "??", + "??", "??", "??", "??", "??", "??", "??", "??", "??", "??", + "??", "??", "??", "??", "??", "??", "??", "??", "??", "??", + "??", "??", "??", "??", "??", "??", "??", "??", "??", "??", + "??", "??", "??", "??", "??", "??", "??", "??", "??", "??", + "??", "??", "??", "??", "??", "??", "??", "??", "??", "??", + "??", "??", "??", "??", "??", "??", "??", "??", "??", "??", + "??", "??", "??", "??", "??", "??", "??", "??", "??", "??", + "??", "??", "??", "??", "??", "??", "??", "??", "??", "??", + "??", "??", "??", "??", "??", "??", "??", "??", "??", "??", + "??", "??", "??", "??", "??", "??", "??", "??", "??", "??", + "??", "??", "??", "??", "??", "??", "??", "??", "??", "??", + "??", "??", "??", "??", "??", "??", "??", "??", "??", "??", + "??", "??", "??", "??", "??", "??", "??", "??", "??", "??", + "??", "??", "??", "??", "??", "??", "??", "??", "??", "??", + "??", "??", "??", "??", "??", "??", "??", "??", "??", "??", + "??", "??", "??", "??", "??", "??", "??", "??", "??", "??", + "??", "??", "??", "??", "??", "??", "??", "??", "??", "??", + "??", " sec"}; void PDStimes(int time_range, int p1, int p2, int time_unit) { - char *unit; - enum {anal, fcst, unknown} type; - int fcst_len = 0; - - if (time_unit >= 0 && time_unit <= sizeof(units)/sizeof(char *)) - unit = units[time_unit]; - else unit = ""; - - /* change x3/x6/x12 to hours */ - - if (time_unit == HOURS3) { - p1 *= 3; p2 *= 3; - time_unit = HOUR; - } - else if (time_unit == HOURS6) { - p1 *= 6; p2 *= 6; - time_unit = HOUR; - } - else if (time_unit == HOURS12) { - p1 *= 12; p2 *= 12; - time_unit = HOUR; - } - else if (time_unit == MINUTES30) { - p1 *= 30; p2 *= 30; - time_unit = MINUTE; - } - else if (time_unit == MINUTES15) { - p1 *= 15; p2 *= 15; - time_unit = MINUTE; - } - /* turn off 5/13/2010 - if (time_unit == MINUTE && p1 % 60 == 0 && p2 % 60 == 0) { - p1 /= 60; p2 /= 60; - time_unit = HOUR; - } - */ - - if (time_unit >= 0 && time_unit <= sizeof(units)/sizeof(char *)) - unit = units[time_unit]; - else unit = ""; + char *unit; + enum {anal, fcst, unknown} type; + int fcst_len = 0; - /* figure out if analysis or forecast */ - /* in GRIB, there is a difference between init and uninit analyses */ - /* not case at NMC .. no longer run initialization */ - /* ignore diff between init an uninit analyses */ + if (time_unit >= 0 && time_unit <= sizeof(units)/sizeof(char *)) + unit = units[time_unit]; + else unit = ""; - switch (time_range) { + /* change x3/x6/x12 to hours */ - case 0: - case 1: - case 113: - case 114: - case 118: - if (p1 == 0) type = anal; - else { - type = fcst; - fcst_len = p1; + if (time_unit == HOURS3) { + p1 *= 3; p2 *= 3; + time_unit = HOUR; } - break; - case 10: /* way NMC uses it, should be unknown? */ - type = fcst; - fcst_len = p1*256 + p2; - if (fcst_len == 0) type = anal; - break; - - case 51: - type = unknown; - break; - case 123: - case 124: - type = anal; - break; - - case 135: - type = anal; - break; - - default: type = unknown; - break; - } - - /* ----------------------------------------------- */ - - if (type == anal) printf("anl:"); - else if (type == fcst) printf("%d%s fcst:",fcst_len,unit); - - - if (time_range == 123 || time_range == 124) { - if (p1 != 0) printf("start@%d%s:",p1,unit); - } - - - /* print time range */ - - - switch (time_range) { - - case 0: - case 1: - case 10: - break; - case 2: printf("valid %d-%d%s:",p1,p2,unit); - break; - case 3: printf("%d-%d%s ave:",p1,p2,unit); - break; - case 4: printf("%d-%d%s acc:",p1,p2,unit); - break; - case 5: printf("%d-%d%s diff:",p1,p2,unit); - break; - case 6: printf("-%d to -%d %s ave:", p1,p2,unit); - break; - case 7: printf("-%d to %d %s ave:", p1,p2,unit); - break; - case 11: if (p1 > 0) { - printf("init fcst %d%s:",p1,unit); + else if (time_unit == HOURS6) { + p1 *= 6; p2 *= 6; + time_unit = HOUR; } - else { - printf("time?:"); + else if (time_unit == HOURS12) { + p1 *= 12; p2 *= 12; + time_unit = HOUR; } - break; - case 13: printf("nudge ana %d%s:",p1,unit); - break; - case 14: printf("rel. fcst %d%s:",p1,unit); - break; - case 51: if (p1 == 0) { - /* printf("clim %d%s:",p2,unit); */ - printf("0-%d%s product:ave@1yr:",p2,unit); + else if (time_unit == MINUTES30) { + p1 *= 30; p2 *= 30; + time_unit = MINUTE; } - else if (p1 == 1) { - /* printf("clim (diurnal) %d%s:",p2,unit); */ - printf("0-%d%s product:same-hour,ave@1yr:",p2,unit); + else if (time_unit == MINUTES15) { + p1 *= 15; p2 *= 15; + time_unit = MINUTE; } - else { - printf("clim? p1=%d? %d%s?:",p1,p2,unit); + /* turn off 5/13/2010 + if (time_unit == MINUTE && p1 % 60 == 0 && p2 % 60 == 0) { + p1 /= 60; p2 /= 60; + time_unit = HOUR; } - break; - case 113: - case 123: - printf("ave@%d%s:",p2,unit); - break; - case 114: - case 124: - printf("acc@%d%s:",p2,unit); - break; - case 115: - printf("ave of fcst:%d to %d%s:",p1,p2,unit); - break; - case 116: - printf("acc of fcst:%d to %d%s:",p1,p2,unit); - break; - case 118: - printf("var@%d%s:",p2,unit); - break; - case 128: - printf("%d-%d%s fcst acc:ave@24hr:", p1, p2, unit); - break; - case 129: - printf("%d-%d%s fcst acc:ave@%d%s:", p1, p2, unit, p2-p1,unit); - break; - case 130: - printf("%d-%d%s fcst ave:ave@24hr:", p1, p2, unit); - break; - case 131: - printf("%d-%d%s fcst ave:ave@%d%s:", p1, p2, unit,p2-p1,unit); - break; - /* for CFS */ - case 132: - printf("%d-%d%s anl:ave@1yr:", p1, p2, unit); - break; - case 133: - printf("%d-%d%s fcst:ave@1yr:", p1, p2, unit); - break; - case 134: - printf("%d-%d%s fcst-anl:rms@1yr:", p1, p2, unit); - break; - case 135: - printf("%d-%d%s fcst-fcst_mean:rms@1yr:", p1, p2, unit); - break; - case 136: - printf("%d-%d%s anl-anl_mean:rms@1yr:", p1, p2, unit); - break; - case 137: - printf("%d-%d%s fcst acc:ave@6hr:", p1, p2, unit); - break; - case 138: - printf("%d-%d%s fcst ave:ave@6hr:", p1, p2, unit); - break; - case 139: - printf("%d-%d%s fcst acc:ave@12hr:", p1, p2, unit); - break; - case 140: - printf("%d-%d%s fcst ave:ave@12hr:", p1, p2, unit); - break; - - default: printf("time?:"); - } + */ + + if (time_unit >= 0 && time_unit <= sizeof(units)/sizeof(char *)) + unit = units[time_unit]; + else unit = ""; + + /* figure out if analysis or forecast */ + /* in GRIB, there is a difference between init and uninit analyses */ + /* not case at NMC .. no longer run initialization */ + /* ignore diff between init an uninit analyses */ + + switch (time_range) { + + case 0: + case 1: + case 113: + case 114: + case 118: + if (p1 == 0) type = anal; + else { + type = fcst; + fcst_len = p1; + } + break; + case 10: /* way NMC uses it, should be unknown? */ + type = fcst; + fcst_len = p1*256 + p2; + if (fcst_len == 0) type = anal; + break; + + case 51: + type = unknown; + break; + case 123: + case 124: + type = anal; + break; + + case 135: + type = anal; + break; + + default: type = unknown; + break; + } + + /* ----------------------------------------------- */ + + if (type == anal) printf("anl:"); + else if (type == fcst) printf("%d%s fcst:",fcst_len,unit); + + + if (time_range == 123 || time_range == 124) { + if (p1 != 0) printf("start@%d%s:",p1,unit); + } + + + /* print time range */ + + + switch (time_range) { + + case 0: + case 1: + case 10: + break; + case 2: printf("valid %d-%d%s:",p1,p2,unit); + break; + case 3: printf("%d-%d%s ave:",p1,p2,unit); + break; + case 4: printf("%d-%d%s acc:",p1,p2,unit); + break; + case 5: printf("%d-%d%s diff:",p1,p2,unit); + break; + case 6: printf("-%d to -%d %s ave:", p1,p2,unit); + break; + case 7: printf("-%d to %d %s ave:", p1,p2,unit); + break; + case 11: if (p1 > 0) { + printf("init fcst %d%s:",p1,unit); + } + else { + printf("time?:"); + } + break; + case 13: printf("nudge ana %d%s:",p1,unit); + break; + case 14: printf("rel. fcst %d%s:",p1,unit); + break; + case 51: if (p1 == 0) { + /* printf("clim %d%s:",p2,unit); */ + printf("0-%d%s product:ave@1yr:",p2,unit); + } + else if (p1 == 1) { + /* printf("clim (diurnal) %d%s:",p2,unit); */ + printf("0-%d%s product:same-hour,ave@1yr:",p2,unit); + } + else { + printf("clim? p1=%d? %d%s?:",p1,p2,unit); + } + break; + case 113: + case 123: + printf("ave@%d%s:",p2,unit); + break; + case 114: + case 124: + printf("acc@%d%s:",p2,unit); + break; + case 115: + printf("ave of fcst:%d to %d%s:",p1,p2,unit); + break; + case 116: + printf("acc of fcst:%d to %d%s:",p1,p2,unit); + break; + case 118: + printf("var@%d%s:",p2,unit); + break; + case 128: + printf("%d-%d%s fcst acc:ave@24hr:", p1, p2, unit); + break; + case 129: + printf("%d-%d%s fcst acc:ave@%d%s:", p1, p2, unit, p2-p1,unit); + break; + case 130: + printf("%d-%d%s fcst ave:ave@24hr:", p1, p2, unit); + break; + case 131: + printf("%d-%d%s fcst ave:ave@%d%s:", p1, p2, unit,p2-p1,unit); + break; + /* for CFS */ + case 132: + printf("%d-%d%s anl:ave@1yr:", p1, p2, unit); + break; + case 133: + printf("%d-%d%s fcst:ave@1yr:", p1, p2, unit); + break; + case 134: + printf("%d-%d%s fcst-anl:rms@1yr:", p1, p2, unit); + break; + case 135: + printf("%d-%d%s fcst-fcst_mean:rms@1yr:", p1, p2, unit); + break; + case 136: + printf("%d-%d%s anl-anl_mean:rms@1yr:", p1, p2, unit); + break; + case 137: + printf("%d-%d%s fcst acc:ave@6hr:", p1, p2, unit); + break; + case 138: + printf("%d-%d%s fcst ave:ave@6hr:", p1, p2, unit); + break; + case 139: + printf("%d-%d%s fcst acc:ave@12hr:", p1, p2, unit); + break; + case 140: + printf("%d-%d%s fcst ave:ave@12hr:", p1, p2, unit); + break; + + default: printf("time?:"); + } } /* @@ -2454,21 +2453,21 @@ void PDStimes(int time_range, int p1, int p2, int time_unit) { */ static int bitsum[256] = { - 8, 7, 7, 6, 7, 6, 6, 5, 7, 6, 6, 5, 6, 5, 5, 4, - 7, 6, 6, 5, 6, 5, 5, 4, 6, 5, 5, 4, 5, 4, 4, 3, - 7, 6, 6, 5, 6, 5, 5, 4, 6, 5, 5, 4, 5, 4, 4, 3, - 6, 5, 5, 4, 5, 4, 4, 3, 5, 4, 4, 3, 4, 3, 3, 2, - 7, 6, 6, 5, 6, 5, 5, 4, 6, 5, 5, 4, 5, 4, 4, 3, - 6, 5, 5, 4, 5, 4, 4, 3, 5, 4, 4, 3, 4, 3, 3, 2, - 6, 5, 5, 4, 5, 4, 4, 3, 5, 4, 4, 3, 4, 3, 3, 2, - 5, 4, 4, 3, 4, 3, 3, 2, 4, 3, 3, 2, 3, 2, 2, 1, - 7, 6, 6, 5, 6, 5, 5, 4, 6, 5, 5, 4, 5, 4, 4, 3, - 6, 5, 5, 4, 5, 4, 4, 3, 5, 4, 4, 3, 4, 3, 3, 2, - 6, 5, 5, 4, 5, 4, 4, 3, 5, 4, 4, 3, 4, 3, 3, 2, - 5, 4, 4, 3, 4, 3, 3, 2, 4, 3, 3, 2, 3, 2, 2, 1, - 6, 5, 5, 4, 5, 4, 4, 3, 5, 4, 4, 3, 4, 3, 3, 2, - 5, 4, 4, 3, 4, 3, 3, 2, 4, 3, 3, 2, 3, 2, 2, 1, - 5, 4, 4, 3, 4, 3, 3, 2, 4, 3, 3, 2, 3, 2, 2, 1, + 8, 7, 7, 6, 7, 6, 6, 5, 7, 6, 6, 5, 6, 5, 5, 4, + 7, 6, 6, 5, 6, 5, 5, 4, 6, 5, 5, 4, 5, 4, 4, 3, + 7, 6, 6, 5, 6, 5, 5, 4, 6, 5, 5, 4, 5, 4, 4, 3, + 6, 5, 5, 4, 5, 4, 4, 3, 5, 4, 4, 3, 4, 3, 3, 2, + 7, 6, 6, 5, 6, 5, 5, 4, 6, 5, 5, 4, 5, 4, 4, 3, + 6, 5, 5, 4, 5, 4, 4, 3, 5, 4, 4, 3, 4, 3, 3, 2, + 6, 5, 5, 4, 5, 4, 4, 3, 5, 4, 4, 3, 4, 3, 3, 2, + 5, 4, 4, 3, 4, 3, 3, 2, 4, 3, 3, 2, 3, 2, 2, 1, + 7, 6, 6, 5, 6, 5, 5, 4, 6, 5, 5, 4, 5, 4, 4, 3, + 6, 5, 5, 4, 5, 4, 4, 3, 5, 4, 4, 3, 4, 3, 3, 2, + 6, 5, 5, 4, 5, 4, 4, 3, 5, 4, 4, 3, 4, 3, 3, 2, + 5, 4, 4, 3, 4, 3, 3, 2, 4, 3, 3, 2, 3, 2, 2, 1, + 6, 5, 5, 4, 5, 4, 4, 3, 5, 4, 4, 3, 4, 3, 3, 2, + 5, 4, 4, 3, 4, 3, 3, 2, 4, 3, 3, 2, 3, 2, 2, 1, + 5, 4, 4, 3, 4, 3, 3, 2, 4, 3, 3, 2, 3, 2, 2, 1, 4, 3, 3, 2, 3, 2, 2, 1, 3, 2, 2, 1, 2, 1, 1, 0}; @@ -2480,8 +2479,8 @@ int missing_points(unsigned char *bitmap, int n) { count = 0; while (n >= 8) { - tmp = *bitmap++; - n -= 8; + tmp = *bitmap++; + n -= 8; count += bitsum[tmp]; } tmp = *bitmap | ((1 << (8 - n)) - 1); @@ -2498,262 +2497,262 @@ int missing_points(unsigned char *bitmap, int n) { */ const struct ParmTable parm_table_ncep_opn[256] = { - /* 0 */ {"var0", "undefined"}, - /* 1 */ {"PRES", "Pressure [Pa]"}, - /* 2 */ {"PRMSL", "Pressure reduced to MSL [Pa]"}, - /* 3 */ {"PTEND", "Pressure tendency [Pa/s]"}, - /* 4 */ {"PVORT", "Pot. vorticity [km^2/kg/s]"}, - /* 5 */ {"ICAHT", "ICAO Standard Atmosphere Reference Height [M]"}, - /* 6 */ {"GP", "Geopotential [m^2/s^2]"}, - /* 7 */ {"HGT", "Geopotential height [gpm]"}, - /* 8 */ {"DIST", "Geometric height [m]"}, - /* 9 */ {"HSTDV", "Std dev of height [m]"}, - /* 10 */ {"TOZNE", "Total ozone [Dobson]"}, - /* 11 */ {"TMP", "Temp. [K]"}, - /* 12 */ {"VTMP", "Virtual temp. [K]"}, - /* 13 */ {"POT", "Potential temp. [K]"}, - /* 14 */ {"EPOT", "Pseudo-adiabatic pot. temp. [K]"}, - /* 15 */ {"TMAX", "Max. temp. [K]"}, - /* 16 */ {"TMIN", "Min. temp. [K]"}, - /* 17 */ {"DPT", "Dew point temp. [K]"}, - /* 18 */ {"DEPR", "Dew point depression [K]"}, - /* 19 */ {"LAPR", "Lapse rate [K/m]"}, - /* 20 */ {"VIS", "Visibility [m]"}, - /* 21 */ {"RDSP1", "Radar spectra (1) [non-dim]"}, - /* 22 */ {"RDSP2", "Radar spectra (2) [non-dim]"}, - /* 23 */ {"RDSP3", "Radar spectra (3) [non-dim]"}, - /* 24 */ {"PLI", "Parcel lifted index (to 500 hPa) [K]"}, - /* 25 */ {"TMPA", "Temp. anomaly [K]"}, - /* 26 */ {"PRESA", "Pressure anomaly [Pa]"}, - /* 27 */ {"GPA", "Geopotential height anomaly [gpm]"}, - /* 28 */ {"WVSP1", "Wave spectra (1) [non-dim]"}, - /* 29 */ {"WVSP2", "Wave spectra (2) [non-dim]"}, - /* 30 */ {"WVSP3", "Wave spectra (3) [non-dim]"}, - /* 31 */ {"WDIR", "Wind direction [deg]"}, - /* 32 */ {"WIND", "Wind speed [m/s]"}, - /* 33 */ {"UGRD", "u wind [m/s]"}, - /* 34 */ {"VGRD", "v wind [m/s]"}, - /* 35 */ {"STRM", "Stream function [m^2/s]"}, - /* 36 */ {"VPOT", "Velocity potential [m^2/s]"}, - /* 37 */ {"MNTSF", "Montgomery stream function [m^2/s^2]"}, - /* 38 */ {"SGCVV", "Sigma coord. vertical velocity [/s]"}, - /* 39 */ {"VVEL", "Pressure vertical velocity [Pa/s]"}, - /* 40 */ {"DZDT", "Geometric vertical velocity [m/s]"}, - /* 41 */ {"ABSV", "Absolute vorticity [/s]"}, - /* 42 */ {"ABSD", "Absolute divergence [/s]"}, - /* 43 */ {"RELV", "Relative vorticity [/s]"}, - /* 44 */ {"RELD", "Relative divergence [/s]"}, - /* 45 */ {"VUCSH", "Vertical u shear [/s]"}, - /* 46 */ {"VVCSH", "Vertical v shear [/s]"}, - /* 47 */ {"DIRC", "Direction of current [deg]"}, - /* 48 */ {"SPC", "Speed of current [m/s]"}, - /* 49 */ {"UOGRD", "u of current [m/s]"}, - /* 50 */ {"VOGRD", "v of current [m/s]"}, - /* 51 */ {"SPFH", "Specific humidity [kg/kg]"}, - /* 52 */ {"RH", "Relative humidity [%]"}, - /* 53 */ {"MIXR", "Humidity mixing ratio [kg/kg]"}, - /* 54 */ {"PWAT", "Precipitable water [kg/m^2]"}, - /* 55 */ {"VAPP", "Vapor pressure [Pa]"}, - /* 56 */ {"SATD", "Saturation deficit [Pa]"}, - /* 57 */ {"EVP", "Evaporation [kg/m^2]"}, - /* 58 */ {"CICE", "Cloud Ice [kg/m^2]"}, - /* 59 */ {"PRATE", "Precipitation rate [kg/m^2/s]"}, - /* 60 */ {"TSTM", "Thunderstorm probability [%]"}, - /* 61 */ {"APCP", "Total precipitation [kg/m^2]"}, - /* 62 */ {"NCPCP", "Large scale precipitation [kg/m^2]"}, - /* 63 */ {"ACPCP", "Convective precipitation [kg/m^2]"}, - /* 64 */ {"SRWEQ", "Snowfall rate water equiv. [kg/m^2/s]"}, - /* 65 */ {"WEASD", "Accum. snow [kg/m^2]"}, - /* 66 */ {"SNOD", "Snow depth [m]"}, - /* 67 */ {"MIXHT", "Mixed layer depth [m]"}, - /* 68 */ {"TTHDP", "Transient thermocline depth [m]"}, - /* 69 */ {"MTHD", "Main thermocline depth [m]"}, - /* 70 */ {"MTHA", "Main thermocline anomaly [m]"}, - /* 71 */ {"TCDC", "Total cloud cover [%]"}, - /* 72 */ {"CDCON", "Convective cloud cover [%]"}, - /* 73 */ {"LCDC", "Low level cloud cover [%]"}, - /* 74 */ {"MCDC", "Mid level cloud cover [%]"}, - /* 75 */ {"HCDC", "High level cloud cover [%]"}, - /* 76 */ {"CWAT", "Cloud water [kg/m^2]"}, - /* 77 */ {"BLI", "Best lifted index (to 500 hPa) [K]"}, - /* 78 */ {"SNOC", "Convective snow [kg/m^2]"}, - /* 79 */ {"SNOL", "Large scale snow [kg/m^2]"}, - /* 80 */ {"WTMP", "Water temp. [K]"}, - /* 81 */ {"LAND", "Land cover (land=1;sea=0) [fraction]"}, - /* 82 */ {"DSLM", "Deviation of sea level from mean [m]"}, - /* 83 */ {"SFCR", "Surface roughness [m]"}, - /* 84 */ {"ALBDO", "Albedo [%]"}, - /* 85 */ {"TSOIL", "Soil temp. [K]"}, - /* 86 */ {"SOILM", "Soil moisture content [kg/m^2]"}, - /* 87 */ {"VEG", "Vegetation [%]"}, - /* 88 */ {"SALTY", "Salinity [kg/kg]"}, - /* 89 */ {"DEN", "Density [kg/m^3]"}, - /* 90 */ {"WATR", "Water runoff [kg/m^2]"}, - /* 91 */ {"ICEC", "Ice concentration (ice=1;no ice=0) [fraction]"}, - /* 92 */ {"ICETK", "Ice thickness [m]"}, - /* 93 */ {"DICED", "Direction of ice drift [deg]"}, - /* 94 */ {"SICED", "Speed of ice drift [m/s]"}, - /* 95 */ {"UICE", "u of ice drift [m/s]"}, - /* 96 */ {"VICE", "v of ice drift [m/s]"}, - /* 97 */ {"ICEG", "Ice growth rate [m/s]"}, - /* 98 */ {"ICED", "Ice divergence [/s]"}, - /* 99 */ {"SNOM", "Snow melt [kg/m^2]"}, - /* 100 */ {"HTSGW", "Sig height of wind waves and swell [m]"}, - /* 101 */ {"WVDIR", "Direction of wind waves [deg]"}, - /* 102 */ {"WVHGT", "Sig height of wind waves [m]"}, - /* 103 */ {"WVPER", "Mean period of wind waves [s]"}, - /* 104 */ {"SWDIR", "Direction of swell waves [deg]"}, - /* 105 */ {"SWELL", "Sig height of swell waves [m]"}, - /* 106 */ {"SWPER", "Mean period of swell waves [s]"}, - /* 107 */ {"DIRPW", "Primary wave direction [deg]"}, - /* 108 */ {"PERPW", "Primary wave mean period [s]"}, - /* 109 */ {"DIRSW", "Secondary wave direction [deg]"}, - /* 110 */ {"PERSW", "Secondary wave mean period [s]"}, - /* 111 */ {"NSWRS", "Net short wave (surface) [W/m^2]"}, - /* 112 */ {"NLWRS", "Net long wave (surface) [W/m^2]"}, - /* 113 */ {"NSWRT", "Net short wave (top) [W/m^2]"}, - /* 114 */ {"NLWRT", "Net long wave (top) [W/m^2]"}, - /* 115 */ {"LWAVR", "Long wave [W/m^2]"}, - /* 116 */ {"SWAVR", "Short wave [W/m^2]"}, - /* 117 */ {"GRAD", "Global radiation [W/m^2]"}, - /* 118 */ {"BRTMP", "Brightness temperature [K]"}, - /* 119 */ {"LWRAD", "Radiance with respect to wave no. [W/m/sr]"}, - /* 120 */ {"SWRAD", "Radiance with respect ot wave len. [W/m^3/sr]"}, - /* 121 */ {"LHTFL", "Latent heat flux [W/m^2]"}, - /* 122 */ {"SHTFL", "Sensible heat flux [W/m^2]"}, - /* 123 */ {"BLYDP", "Boundary layer dissipation [W/m^2]"}, - /* 124 */ {"UFLX", "Zonal momentum flux [N/m^2]"}, - /* 125 */ {"VFLX", "Meridional momentum flux [N/m^2]"}, - /* 126 */ {"WMIXE", "Wind mixing energy [J]"}, - /* 127 */ {"IMGD", "Image data []"}, - /* 128 */ {"MSLSA", "Mean sea level pressure (Std Atm) [Pa]"}, - /* 129 */ {"MSLMA", "Mean sea level pressure (MAPS) [Pa]"}, - /* 130 */ {"MSLET", "Mean sea level pressure (ETA model) [Pa]"}, - /* 131 */ {"LFTX", "Surface lifted index [K]"}, - /* 132 */ {"4LFTX", "Best (4-layer) lifted index [K]"}, - /* 133 */ {"KX", "K index [K]"}, - /* 134 */ {"SX", "Sweat index [K]"}, - /* 135 */ {"MCONV", "Horizontal moisture divergence [kg/kg/s]"}, - /* 136 */ {"VWSH", "Vertical speed shear [1/s]"}, - /* 137 */ {"TSLSA", "3-hr pressure tendency (Std Atmos Red) [Pa/s]"}, - /* 138 */ {"BVF2", "Brunt-Vaisala frequency^2 [1/s^2]"}, - /* 139 */ {"PVMW", "Potential vorticity (mass-weighted) [1/s/m]"}, - /* 140 */ {"CRAIN", "Categorical rain [yes=1;no=0]"}, - /* 141 */ {"CFRZR", "Categorical freezing rain [yes=1;no=0]"}, - /* 142 */ {"CICEP", "Categorical ice pellets [yes=1;no=0]"}, - /* 143 */ {"CSNOW", "Categorical snow [yes=1;no=0]"}, - /* 144 */ {"SOILW", "Volumetric soil moisture [fraction]"}, - /* 145 */ {"PEVPR", "Potential evaporation rate [W/m^2]"}, - /* 146 */ {"CWORK", "Cloud work function [J/kg]"}, - /* 147 */ {"U-GWD", "Zonal gravity wave stress [N/m^2]"}, - /* 148 */ {"V-GWD", "Meridional gravity wave stress [N/m^2]"}, - /* 149 */ {"PV", "Potential vorticity [m^2/s/kg]"}, - /* 150 */ {"COVMZ", "Covariance between u and v [m^2/s^2]"}, - /* 151 */ {"COVTZ", "Covariance between u and T [K*m/s]"}, - /* 152 */ {"COVTM", "Covariance between v and T [K*m/s]"}, - /* 153 */ {"CLWMR", "Cloud water [kg/kg]"}, - /* 154 */ {"O3MR", "Ozone mixing ratio [kg/kg]"}, - /* 155 */ {"GFLUX", "Ground heat flux [W/m^2]"}, - /* 156 */ {"CIN", "Convective inhibition [J/kg]"}, - /* 157 */ {"CAPE", "Convective Avail. Pot. Energy [J/kg]"}, - /* 158 */ {"TKE", "Turbulent kinetic energy [J/kg]"}, - /* 159 */ {"CONDP", "Lifted parcel condensation pressure [Pa]"}, - /* 160 */ {"CSUSF", "Clear sky upward solar flux [W/m^2]"}, - /* 161 */ {"CSDSF", "Clear sky downward solar flux [W/m^2]"}, - /* 162 */ {"CSULF", "Clear sky upward long wave flux [W/m^2]"}, - /* 163 */ {"CSDLF", "Clear sky downward long wave flux [W/m^2]"}, - /* 164 */ {"CFNSF", "Cloud forcing net solar flux [W/m^2]"}, - /* 165 */ {"CFNLF", "Cloud forcing net long wave flux [W/m^2]"}, - /* 166 */ {"VBDSF", "Visible beam downward solar flux [W/m^2]"}, - /* 167 */ {"VDDSF", "Visible diffuse downward solar flux [W/m^2]"}, - /* 168 */ {"NBDSF", "Near IR beam downward solar flux [W/m^2]"}, - /* 169 */ {"NDDSF", "Near IR diffuse downward solar flux [W/m^2]"}, - /* 170 */ {"RWMR", "Rain water mixing ratio [kg/kg]"}, - /* 171 */ {"SNMR", "Snow mixing ratio [kg/kg]"}, - /* 172 */ {"MFLX", "Momentum flux [N/m^2]"}, - /* 173 */ {"LMH", "Mass point model surface [non-dim]"}, - /* 174 */ {"LMV", "Velocity point model surface [non-dim]"}, - /* 175 */ {"MLYNO", "Model layer number (from bottom up) [non-dim]"}, - /* 176 */ {"NLAT", "Latitude (-90 to +90) [deg]"}, - /* 177 */ {"ELON", "East longitude (0-360) [deg]"}, - /* 178 */ {"ICMR", "Ice mixing ratio [kg/kg]"}, - /* 179 */ {"GRMR", "Graupel mixing ratio [kg/kg]"}, - /* 180 */ {"GUST", "Surface wind gust [m/s]"}, - /* 181 */ {"LPSX", "x-gradient of log pressure [1/m]"}, - /* 182 */ {"LPSY", "y-gradient of log pressure [1/m]"}, - /* 183 */ {"HGTX", "x-gradient of height [m/m]"}, - /* 184 */ {"HGTY", "y-gradient of height [m/m]"}, - /* 185 */ {"TURB", "Turbulence SIGMET/AIRMET [non-dim]"}, - /* 186 */ {"ICNG", "Icing SIGMET/AIRMET [non-dim]"}, - /* 187 */ {"LTNG", "Lightning [non-dim]"}, - /* 188 */ {"DRIP", "Rate of water dropping from canopy to gnd [kg/m^2]"}, - /* 189 */ {"VPTMP", "Virtual pot. temp. [K]"}, - /* 190 */ {"HLCY", "Storm relative helicity [m^2/s^2]"}, - /* 191 */ {"PROB", "Prob. from ensemble [non-dim]"}, - /* 192 */ {"PROBN", "Prob. from ensemble norm. to clim. expect. [non-dim]"}, - /* 193 */ {"POP", "Prob. of precipitation [%]"}, - /* 194 */ {"CPOFP", "Prob. of frozen precipitation [%]"}, - /* 195 */ {"CPOZP", "Prob. of freezing precipitation [%]"}, - /* 196 */ {"USTM", "u-component of storm motion [m/s]"}, - /* 197 */ {"VSTM", "v-component of storm motion [m/s]"}, - /* 198 */ {"NCIP", "No. concen. ice particles []"}, - /* 199 */ {"EVBS", "Direct evaporation from bare soil [W/m^2]"}, - /* 200 */ {"EVCW", "Canopy water evaporation [W/m^2]"}, - /* 201 */ {"ICWAT", "Ice-free water surface [%]"}, - /* 202 */ {"CWDI", "Convective weather detection index []"}, - /* 203 */ {"VAFTAD", "VAFTAD?? [??]"}, - /* 204 */ {"DSWRF", "Downward short wave flux [W/m^2]"}, - /* 205 */ {"DLWRF", "Downward long wave flux [W/m^2]"}, - /* 206 */ {"UVI", "Ultraviolet index [W/m^2]"}, - /* 207 */ {"MSTAV", "Moisture availability [%]"}, - /* 208 */ {"SFEXC", "Exchange coefficient [(kg/m^3)(m/s)]"}, - /* 209 */ {"MIXLY", "No. of mixed layers next to surface [integer]"}, - /* 210 */ {"TRANS", "Transpiration [W/m^2]"}, - /* 211 */ {"USWRF", "Upward short wave flux [W/m^2]"}, - /* 212 */ {"ULWRF", "Upward long wave flux [W/m^2]"}, - /* 213 */ {"CDLYR", "Non-convective cloud [%]"}, - /* 214 */ {"CPRAT", "Convective precip. rate [kg/m^2/s]"}, - /* 215 */ {"TTDIA", "Temp. tendency by all physics [K/s]"}, - /* 216 */ {"TTRAD", "Temp. tendency by all radiation [K/s]"}, - /* 217 */ {"TTPHY", "Temp. tendency by non-radiation physics [K/s]"}, - /* 218 */ {"PREIX", "Precip index (0.0-1.00) [fraction]"}, - /* 219 */ {"TSD1D", "Std. dev. of IR T over 1x1 deg area [K]"}, - /* 220 */ {"NLGSP", "Natural log of surface pressure [ln(kPa)]"}, - /* 221 */ {"HPBL", "Planetary boundary layer height [m]"}, - /* 222 */ {"5WAVH", "5-wave geopotential height [gpm]"}, - /* 223 */ {"CNWAT", "Plant canopy surface water [kg/m^2]"}, - /* 224 */ {"SOTYP", "Soil type (Zobler) [0..9]"}, - /* 225 */ {"VGTYP", "Vegetation type (as in SiB) [0..13]"}, - /* 226 */ {"BMIXL", "Blackadar's mixing length scale [m]"}, - /* 227 */ {"AMIXL", "Asymptotic mixing length scale [m]"}, - /* 228 */ {"PEVAP", "Pot. evaporation [kg/m^2]"}, - /* 229 */ {"SNOHF", "Snow phase-change heat flux [W/m^2]"}, - /* 230 */ {"5WAVA", "5-wave geopot. height anomaly [gpm]"}, - /* 231 */ {"MFLUX", "Convective cloud mass flux [Pa/s]"}, - /* 232 */ {"DTRF", "Downward total radiation flux [W/m^2]"}, - /* 233 */ {"UTRF", "Upward total radiation flux [W/m^2]"}, - /* 234 */ {"BGRUN", "Baseflow-groundwater runoff [kg/m^2]"}, - /* 235 */ {"SSRUN", "Storm surface runoff [kg/m^2]"}, - /* 236 */ {"SIPD", "Supercooled large droplet (SLD) icing pot. diagn. []"}, - /* 237 */ {"O3TOT", "Total ozone [kg/m^2]"}, - /* 238 */ {"SNOWC", "Snow cover [%]"}, - /* 239 */ {"SNOT", "Snow temp. [K]"}, - /* 240 */ {"COVTW", "Covariance T and w [K*m/s]"}, - /* 241 */ {"LRGHR", "Large scale condensation heating [K/s]"}, - /* 242 */ {"CNVHR", "Deep convective heating [K/s]"}, - /* 243 */ {"CNVMR", "Deep convective moistening [kg/kg/s]"}, - /* 244 */ {"SHAHR", "Shallow convective heating [K/s]"}, - /* 245 */ {"SHAMR", "Shallow convective moistening [kg/kg/s]"}, - /* 246 */ {"VDFHR", "Vertical diffusion heating [K/s]"}, - /* 247 */ {"VDFUA", "Vertical diffusion zonal accel [m/s^2]"}, - /* 248 */ {"VDFVA", "Vertical diffusion meridional accel [m/s^2]"}, - /* 249 */ {"VDFMR", "Vertical diffusion moistening [kg/kg/s]"}, - /* 250 */ {"SWHR", "Solar radiative heating [K/s]"}, - /* 251 */ {"LWHR", "Longwave radiative heating [K/s]"}, - /* 252 */ {"CD", "Drag coefficient [non-dim]"}, - /* 253 */ {"FRICV", "Friction velocity [m/s]"}, - /* 254 */ {"RI", "Richardson number [non-dim]"}, - /* 255 */ {"var255", "undefined"}, + /* 0 */ {"var0", "undefined"}, + /* 1 */ {"PRES", "Pressure [Pa]"}, + /* 2 */ {"PRMSL", "Pressure reduced to MSL [Pa]"}, + /* 3 */ {"PTEND", "Pressure tendency [Pa/s]"}, + /* 4 */ {"PVORT", "Pot. vorticity [km^2/kg/s]"}, + /* 5 */ {"ICAHT", "ICAO Standard Atmosphere Reference Height [M]"}, + /* 6 */ {"GP", "Geopotential [m^2/s^2]"}, + /* 7 */ {"HGT", "Geopotential height [gpm]"}, + /* 8 */ {"DIST", "Geometric height [m]"}, + /* 9 */ {"HSTDV", "Std dev of height [m]"}, + /* 10 */ {"TOZNE", "Total ozone [Dobson]"}, + /* 11 */ {"TMP", "Temp. [K]"}, + /* 12 */ {"VTMP", "Virtual temp. [K]"}, + /* 13 */ {"POT", "Potential temp. [K]"}, + /* 14 */ {"EPOT", "Pseudo-adiabatic pot. temp. [K]"}, + /* 15 */ {"TMAX", "Max. temp. [K]"}, + /* 16 */ {"TMIN", "Min. temp. [K]"}, + /* 17 */ {"DPT", "Dew point temp. [K]"}, + /* 18 */ {"DEPR", "Dew point depression [K]"}, + /* 19 */ {"LAPR", "Lapse rate [K/m]"}, + /* 20 */ {"VIS", "Visibility [m]"}, + /* 21 */ {"RDSP1", "Radar spectra (1) [non-dim]"}, + /* 22 */ {"RDSP2", "Radar spectra (2) [non-dim]"}, + /* 23 */ {"RDSP3", "Radar spectra (3) [non-dim]"}, + /* 24 */ {"PLI", "Parcel lifted index (to 500 hPa) [K]"}, + /* 25 */ {"TMPA", "Temp. anomaly [K]"}, + /* 26 */ {"PRESA", "Pressure anomaly [Pa]"}, + /* 27 */ {"GPA", "Geopotential height anomaly [gpm]"}, + /* 28 */ {"WVSP1", "Wave spectra (1) [non-dim]"}, + /* 29 */ {"WVSP2", "Wave spectra (2) [non-dim]"}, + /* 30 */ {"WVSP3", "Wave spectra (3) [non-dim]"}, + /* 31 */ {"WDIR", "Wind direction [deg]"}, + /* 32 */ {"WIND", "Wind speed [m/s]"}, + /* 33 */ {"UGRD", "u wind [m/s]"}, + /* 34 */ {"VGRD", "v wind [m/s]"}, + /* 35 */ {"STRM", "Stream function [m^2/s]"}, + /* 36 */ {"VPOT", "Velocity potential [m^2/s]"}, + /* 37 */ {"MNTSF", "Montgomery stream function [m^2/s^2]"}, + /* 38 */ {"SGCVV", "Sigma coord. vertical velocity [/s]"}, + /* 39 */ {"VVEL", "Pressure vertical velocity [Pa/s]"}, + /* 40 */ {"DZDT", "Geometric vertical velocity [m/s]"}, + /* 41 */ {"ABSV", "Absolute vorticity [/s]"}, + /* 42 */ {"ABSD", "Absolute divergence [/s]"}, + /* 43 */ {"RELV", "Relative vorticity [/s]"}, + /* 44 */ {"RELD", "Relative divergence [/s]"}, + /* 45 */ {"VUCSH", "Vertical u shear [/s]"}, + /* 46 */ {"VVCSH", "Vertical v shear [/s]"}, + /* 47 */ {"DIRC", "Direction of current [deg]"}, + /* 48 */ {"SPC", "Speed of current [m/s]"}, + /* 49 */ {"UOGRD", "u of current [m/s]"}, + /* 50 */ {"VOGRD", "v of current [m/s]"}, + /* 51 */ {"SPFH", "Specific humidity [kg/kg]"}, + /* 52 */ {"RH", "Relative humidity [%]"}, + /* 53 */ {"MIXR", "Humidity mixing ratio [kg/kg]"}, + /* 54 */ {"PWAT", "Precipitable water [kg/m^2]"}, + /* 55 */ {"VAPP", "Vapor pressure [Pa]"}, + /* 56 */ {"SATD", "Saturation deficit [Pa]"}, + /* 57 */ {"EVP", "Evaporation [kg/m^2]"}, + /* 58 */ {"CICE", "Cloud Ice [kg/m^2]"}, + /* 59 */ {"PRATE", "Precipitation rate [kg/m^2/s]"}, + /* 60 */ {"TSTM", "Thunderstorm probability [%]"}, + /* 61 */ {"APCP", "Total precipitation [kg/m^2]"}, + /* 62 */ {"NCPCP", "Large scale precipitation [kg/m^2]"}, + /* 63 */ {"ACPCP", "Convective precipitation [kg/m^2]"}, + /* 64 */ {"SRWEQ", "Snowfall rate water equiv. [kg/m^2/s]"}, + /* 65 */ {"WEASD", "Accum. snow [kg/m^2]"}, + /* 66 */ {"SNOD", "Snow depth [m]"}, + /* 67 */ {"MIXHT", "Mixed layer depth [m]"}, + /* 68 */ {"TTHDP", "Transient thermocline depth [m]"}, + /* 69 */ {"MTHD", "Main thermocline depth [m]"}, + /* 70 */ {"MTHA", "Main thermocline anomaly [m]"}, + /* 71 */ {"TCDC", "Total cloud cover [%]"}, + /* 72 */ {"CDCON", "Convective cloud cover [%]"}, + /* 73 */ {"LCDC", "Low level cloud cover [%]"}, + /* 74 */ {"MCDC", "Mid level cloud cover [%]"}, + /* 75 */ {"HCDC", "High level cloud cover [%]"}, + /* 76 */ {"CWAT", "Cloud water [kg/m^2]"}, + /* 77 */ {"BLI", "Best lifted index (to 500 hPa) [K]"}, + /* 78 */ {"SNOC", "Convective snow [kg/m^2]"}, + /* 79 */ {"SNOL", "Large scale snow [kg/m^2]"}, + /* 80 */ {"WTMP", "Water temp. [K]"}, + /* 81 */ {"LAND", "Land cover (land=1;sea=0) [fraction]"}, + /* 82 */ {"DSLM", "Deviation of sea level from mean [m]"}, + /* 83 */ {"SFCR", "Surface roughness [m]"}, + /* 84 */ {"ALBDO", "Albedo [%]"}, + /* 85 */ {"TSOIL", "Soil temp. [K]"}, + /* 86 */ {"SOILM", "Soil moisture content [kg/m^2]"}, + /* 87 */ {"VEG", "Vegetation [%]"}, + /* 88 */ {"SALTY", "Salinity [kg/kg]"}, + /* 89 */ {"DEN", "Density [kg/m^3]"}, + /* 90 */ {"WATR", "Water runoff [kg/m^2]"}, + /* 91 */ {"ICEC", "Ice concentration (ice=1;no ice=0) [fraction]"}, + /* 92 */ {"ICETK", "Ice thickness [m]"}, + /* 93 */ {"DICED", "Direction of ice drift [deg]"}, + /* 94 */ {"SICED", "Speed of ice drift [m/s]"}, + /* 95 */ {"UICE", "u of ice drift [m/s]"}, + /* 96 */ {"VICE", "v of ice drift [m/s]"}, + /* 97 */ {"ICEG", "Ice growth rate [m/s]"}, + /* 98 */ {"ICED", "Ice divergence [/s]"}, + /* 99 */ {"SNOM", "Snow melt [kg/m^2]"}, + /* 100 */ {"HTSGW", "Sig height of wind waves and swell [m]"}, + /* 101 */ {"WVDIR", "Direction of wind waves [deg]"}, + /* 102 */ {"WVHGT", "Sig height of wind waves [m]"}, + /* 103 */ {"WVPER", "Mean period of wind waves [s]"}, + /* 104 */ {"SWDIR", "Direction of swell waves [deg]"}, + /* 105 */ {"SWELL", "Sig height of swell waves [m]"}, + /* 106 */ {"SWPER", "Mean period of swell waves [s]"}, + /* 107 */ {"DIRPW", "Primary wave direction [deg]"}, + /* 108 */ {"PERPW", "Primary wave mean period [s]"}, + /* 109 */ {"DIRSW", "Secondary wave direction [deg]"}, + /* 110 */ {"PERSW", "Secondary wave mean period [s]"}, + /* 111 */ {"NSWRS", "Net short wave (surface) [W/m^2]"}, + /* 112 */ {"NLWRS", "Net long wave (surface) [W/m^2]"}, + /* 113 */ {"NSWRT", "Net short wave (top) [W/m^2]"}, + /* 114 */ {"NLWRT", "Net long wave (top) [W/m^2]"}, + /* 115 */ {"LWAVR", "Long wave [W/m^2]"}, + /* 116 */ {"SWAVR", "Short wave [W/m^2]"}, + /* 117 */ {"GRAD", "Global radiation [W/m^2]"}, + /* 118 */ {"BRTMP", "Brightness temperature [K]"}, + /* 119 */ {"LWRAD", "Radiance with respect to wave no. [W/m/sr]"}, + /* 120 */ {"SWRAD", "Radiance with respect ot wave len. [W/m^3/sr]"}, + /* 121 */ {"LHTFL", "Latent heat flux [W/m^2]"}, + /* 122 */ {"SHTFL", "Sensible heat flux [W/m^2]"}, + /* 123 */ {"BLYDP", "Boundary layer dissipation [W/m^2]"}, + /* 124 */ {"UFLX", "Zonal momentum flux [N/m^2]"}, + /* 125 */ {"VFLX", "Meridional momentum flux [N/m^2]"}, + /* 126 */ {"WMIXE", "Wind mixing energy [J]"}, + /* 127 */ {"IMGD", "Image data []"}, + /* 128 */ {"MSLSA", "Mean sea level pressure (Std Atm) [Pa]"}, + /* 129 */ {"MSLMA", "Mean sea level pressure (MAPS) [Pa]"}, + /* 130 */ {"MSLET", "Mean sea level pressure (ETA model) [Pa]"}, + /* 131 */ {"LFTX", "Surface lifted index [K]"}, + /* 132 */ {"4LFTX", "Best (4-layer) lifted index [K]"}, + /* 133 */ {"KX", "K index [K]"}, + /* 134 */ {"SX", "Sweat index [K]"}, + /* 135 */ {"MCONV", "Horizontal moisture divergence [kg/kg/s]"}, + /* 136 */ {"VWSH", "Vertical speed shear [1/s]"}, + /* 137 */ {"TSLSA", "3-hr pressure tendency (Std Atmos Red) [Pa/s]"}, + /* 138 */ {"BVF2", "Brunt-Vaisala frequency^2 [1/s^2]"}, + /* 139 */ {"PVMW", "Potential vorticity (mass-weighted) [1/s/m]"}, + /* 140 */ {"CRAIN", "Categorical rain [yes=1;no=0]"}, + /* 141 */ {"CFRZR", "Categorical freezing rain [yes=1;no=0]"}, + /* 142 */ {"CICEP", "Categorical ice pellets [yes=1;no=0]"}, + /* 143 */ {"CSNOW", "Categorical snow [yes=1;no=0]"}, + /* 144 */ {"SOILW", "Volumetric soil moisture [fraction]"}, + /* 145 */ {"PEVPR", "Potential evaporation rate [W/m^2]"}, + /* 146 */ {"CWORK", "Cloud work function [J/kg]"}, + /* 147 */ {"U-GWD", "Zonal gravity wave stress [N/m^2]"}, + /* 148 */ {"V-GWD", "Meridional gravity wave stress [N/m^2]"}, + /* 149 */ {"PV", "Potential vorticity [m^2/s/kg]"}, + /* 150 */ {"COVMZ", "Covariance between u and v [m^2/s^2]"}, + /* 151 */ {"COVTZ", "Covariance between u and T [K*m/s]"}, + /* 152 */ {"COVTM", "Covariance between v and T [K*m/s]"}, + /* 153 */ {"CLWMR", "Cloud water [kg/kg]"}, + /* 154 */ {"O3MR", "Ozone mixing ratio [kg/kg]"}, + /* 155 */ {"GFLUX", "Ground heat flux [W/m^2]"}, + /* 156 */ {"CIN", "Convective inhibition [J/kg]"}, + /* 157 */ {"CAPE", "Convective Avail. Pot. Energy [J/kg]"}, + /* 158 */ {"TKE", "Turbulent kinetic energy [J/kg]"}, + /* 159 */ {"CONDP", "Lifted parcel condensation pressure [Pa]"}, + /* 160 */ {"CSUSF", "Clear sky upward solar flux [W/m^2]"}, + /* 161 */ {"CSDSF", "Clear sky downward solar flux [W/m^2]"}, + /* 162 */ {"CSULF", "Clear sky upward long wave flux [W/m^2]"}, + /* 163 */ {"CSDLF", "Clear sky downward long wave flux [W/m^2]"}, + /* 164 */ {"CFNSF", "Cloud forcing net solar flux [W/m^2]"}, + /* 165 */ {"CFNLF", "Cloud forcing net long wave flux [W/m^2]"}, + /* 166 */ {"VBDSF", "Visible beam downward solar flux [W/m^2]"}, + /* 167 */ {"VDDSF", "Visible diffuse downward solar flux [W/m^2]"}, + /* 168 */ {"NBDSF", "Near IR beam downward solar flux [W/m^2]"}, + /* 169 */ {"NDDSF", "Near IR diffuse downward solar flux [W/m^2]"}, + /* 170 */ {"RWMR", "Rain water mixing ratio [kg/kg]"}, + /* 171 */ {"SNMR", "Snow mixing ratio [kg/kg]"}, + /* 172 */ {"MFLX", "Momentum flux [N/m^2]"}, + /* 173 */ {"LMH", "Mass point model surface [non-dim]"}, + /* 174 */ {"LMV", "Velocity point model surface [non-dim]"}, + /* 175 */ {"MLYNO", "Model layer number (from bottom up) [non-dim]"}, + /* 176 */ {"NLAT", "Latitude (-90 to +90) [deg]"}, + /* 177 */ {"ELON", "East longitude (0-360) [deg]"}, + /* 178 */ {"ICMR", "Ice mixing ratio [kg/kg]"}, + /* 179 */ {"GRMR", "Graupel mixing ratio [kg/kg]"}, + /* 180 */ {"GUST", "Surface wind gust [m/s]"}, + /* 181 */ {"LPSX", "x-gradient of log pressure [1/m]"}, + /* 182 */ {"LPSY", "y-gradient of log pressure [1/m]"}, + /* 183 */ {"HGTX", "x-gradient of height [m/m]"}, + /* 184 */ {"HGTY", "y-gradient of height [m/m]"}, + /* 185 */ {"TURB", "Turbulence SIGMET/AIRMET [non-dim]"}, + /* 186 */ {"ICNG", "Icing SIGMET/AIRMET [non-dim]"}, + /* 187 */ {"LTNG", "Lightning [non-dim]"}, + /* 188 */ {"DRIP", "Rate of water dropping from canopy to gnd [kg/m^2]"}, + /* 189 */ {"VPTMP", "Virtual pot. temp. [K]"}, + /* 190 */ {"HLCY", "Storm relative helicity [m^2/s^2]"}, + /* 191 */ {"PROB", "Prob. from ensemble [non-dim]"}, + /* 192 */ {"PROBN", "Prob. from ensemble norm. to clim. expect. [non-dim]"}, + /* 193 */ {"POP", "Prob. of precipitation [%]"}, + /* 194 */ {"CPOFP", "Prob. of frozen precipitation [%]"}, + /* 195 */ {"CPOZP", "Prob. of freezing precipitation [%]"}, + /* 196 */ {"USTM", "u-component of storm motion [m/s]"}, + /* 197 */ {"VSTM", "v-component of storm motion [m/s]"}, + /* 198 */ {"NCIP", "No. concen. ice particles []"}, + /* 199 */ {"EVBS", "Direct evaporation from bare soil [W/m^2]"}, + /* 200 */ {"EVCW", "Canopy water evaporation [W/m^2]"}, + /* 201 */ {"ICWAT", "Ice-free water surface [%]"}, + /* 202 */ {"CWDI", "Convective weather detection index []"}, + /* 203 */ {"VAFTAD", "VAFTAD?? [??]"}, + /* 204 */ {"DSWRF", "Downward short wave flux [W/m^2]"}, + /* 205 */ {"DLWRF", "Downward long wave flux [W/m^2]"}, + /* 206 */ {"UVI", "Ultraviolet index [W/m^2]"}, + /* 207 */ {"MSTAV", "Moisture availability [%]"}, + /* 208 */ {"SFEXC", "Exchange coefficient [(kg/m^3)(m/s)]"}, + /* 209 */ {"MIXLY", "No. of mixed layers next to surface [integer]"}, + /* 210 */ {"TRANS", "Transpiration [W/m^2]"}, + /* 211 */ {"USWRF", "Upward short wave flux [W/m^2]"}, + /* 212 */ {"ULWRF", "Upward long wave flux [W/m^2]"}, + /* 213 */ {"CDLYR", "Non-convective cloud [%]"}, + /* 214 */ {"CPRAT", "Convective precip. rate [kg/m^2/s]"}, + /* 215 */ {"TTDIA", "Temp. tendency by all physics [K/s]"}, + /* 216 */ {"TTRAD", "Temp. tendency by all radiation [K/s]"}, + /* 217 */ {"TTPHY", "Temp. tendency by non-radiation physics [K/s]"}, + /* 218 */ {"PREIX", "Precip index (0.0-1.00) [fraction]"}, + /* 219 */ {"TSD1D", "Std. dev. of IR T over 1x1 deg area [K]"}, + /* 220 */ {"NLGSP", "Natural log of surface pressure [ln(kPa)]"}, + /* 221 */ {"HPBL", "Planetary boundary layer height [m]"}, + /* 222 */ {"5WAVH", "5-wave geopotential height [gpm]"}, + /* 223 */ {"CNWAT", "Plant canopy surface water [kg/m^2]"}, + /* 224 */ {"SOTYP", "Soil type (Zobler) [0..9]"}, + /* 225 */ {"VGTYP", "Vegetation type (as in SiB) [0..13]"}, + /* 226 */ {"BMIXL", "Blackadar's mixing length scale [m]"}, + /* 227 */ {"AMIXL", "Asymptotic mixing length scale [m]"}, + /* 228 */ {"PEVAP", "Pot. evaporation [kg/m^2]"}, + /* 229 */ {"SNOHF", "Snow phase-change heat flux [W/m^2]"}, + /* 230 */ {"5WAVA", "5-wave geopot. height anomaly [gpm]"}, + /* 231 */ {"MFLUX", "Convective cloud mass flux [Pa/s]"}, + /* 232 */ {"DTRF", "Downward total radiation flux [W/m^2]"}, + /* 233 */ {"UTRF", "Upward total radiation flux [W/m^2]"}, + /* 234 */ {"BGRUN", "Baseflow-groundwater runoff [kg/m^2]"}, + /* 235 */ {"SSRUN", "Storm surface runoff [kg/m^2]"}, + /* 236 */ {"SIPD", "Supercooled large droplet (SLD) icing pot. diagn. []"}, + /* 237 */ {"O3TOT", "Total ozone [kg/m^2]"}, + /* 238 */ {"SNOWC", "Snow cover [%]"}, + /* 239 */ {"SNOT", "Snow temp. [K]"}, + /* 240 */ {"COVTW", "Covariance T and w [K*m/s]"}, + /* 241 */ {"LRGHR", "Large scale condensation heating [K/s]"}, + /* 242 */ {"CNVHR", "Deep convective heating [K/s]"}, + /* 243 */ {"CNVMR", "Deep convective moistening [kg/kg/s]"}, + /* 244 */ {"SHAHR", "Shallow convective heating [K/s]"}, + /* 245 */ {"SHAMR", "Shallow convective moistening [kg/kg/s]"}, + /* 246 */ {"VDFHR", "Vertical diffusion heating [K/s]"}, + /* 247 */ {"VDFUA", "Vertical diffusion zonal accel [m/s^2]"}, + /* 248 */ {"VDFVA", "Vertical diffusion meridional accel [m/s^2]"}, + /* 249 */ {"VDFMR", "Vertical diffusion moistening [kg/kg/s]"}, + /* 250 */ {"SWHR", "Solar radiative heating [K/s]"}, + /* 251 */ {"LWHR", "Longwave radiative heating [K/s]"}, + /* 252 */ {"CD", "Drag coefficient [non-dim]"}, + /* 253 */ {"FRICV", "Friction velocity [m/s]"}, + /* 254 */ {"RI", "Richardson number [non-dim]"}, + /* 255 */ {"var255", "undefined"}, }; /* @@ -2767,1824 +2766,4675 @@ const struct ParmTable parm_table_ncep_opn[256] = { * * Some ways to tell Reanalysis files from OPN files * Reanalysis: always generated by process 80 - T62 28 level model - * Original subcenter=0 Reanalysis files had + * Original subcenter=0 Reanalysis files had * 2.5x2.5 (144x73) lat-long grid or 192x94 Gaussian grid (PDS grid=255?) */ const struct ParmTable parm_table_ncep_reanal[256] = { - /* 0 */ {"var0", "undefined"}, - /* 1 */ {"PRES", "Pressure [Pa]"}, - /* 2 */ {"PRMSL", "Pressure reduced to MSL [Pa]"}, - /* 3 */ {"PTEND", "Pressure tendency [Pa/s]"}, - /* 4 */ {"var4", "undefined"}, - /* 5 */ {"var5", "undefined"}, - /* 6 */ {"GP", "Geopotential [m^2/s^2]"}, - /* 7 */ {"HGT", "Geopotential height [gpm]"}, - /* 8 */ {"DIST", "Geometric height [m]"}, - /* 9 */ {"HSTDV", "Std dev of height [m]"}, - /* 10 */ {"HVAR", "Variance of height [m^2]"}, - /* 11 */ {"TMP", "Temp. [K]"}, - /* 12 */ {"VTMP", "Virtual temp. [K]"}, - /* 13 */ {"POT", "Potential temp. [K]"}, - /* 14 */ {"EPOT", "Pseudo-adiabatic pot. temp. [K]"}, - /* 15 */ {"TMAX", "Max. temp. [K]"}, - /* 16 */ {"TMIN", "Min. temp. [K]"}, - /* 17 */ {"DPT", "Dew point temp. [K]"}, - /* 18 */ {"DEPR", "Dew point depression [K]"}, - /* 19 */ {"LAPR", "Lapse rate [K/m]"}, - /* 20 */ {"VISIB", "Visibility [m]"}, - /* 21 */ {"RDSP1", "Radar spectra (1) [non-dim]"}, - /* 22 */ {"RDSP2", "Radar spectra (2) [non-dim]"}, - /* 23 */ {"RDSP3", "Radar spectra (3) [non-dim]"}, - /* 24 */ {"var24", "undefined"}, - /* 25 */ {"TMPA", "Temp. anomaly [K]"}, - /* 26 */ {"PRESA", "Pressure anomaly [Pa]"}, - /* 27 */ {"GPA", "Geopotential height anomaly [gpm]"}, - /* 28 */ {"WVSP1", "Wave spectra (1) [non-dim]"}, - /* 29 */ {"WVSP2", "Wave spectra (2) [non-dim]"}, - /* 30 */ {"WVSP3", "Wave spectra (3) [non-dim]"}, - /* 31 */ {"WDIR", "Wind direction [deg]"}, - /* 32 */ {"WIND", "Wind speed [m/s]"}, - /* 33 */ {"UGRD", "u wind [m/s]"}, - /* 34 */ {"VGRD", "v wind [m/s]"}, - /* 35 */ {"STRM", "Stream function [m^2/s]"}, - /* 36 */ {"VPOT", "Velocity potential [m^2/s]"}, - /* 37 */ {"MNTSF", "Montgomery stream function [m^2/s^2]"}, - /* 38 */ {"SGCVV", "Sigma coord. vertical velocity [/s]"}, - /* 39 */ {"VVEL", "Pressure vertical velocity [Pa/s]"}, - /* 40 */ {"DZDT", "Geometric vertical velocity [m/s]"}, - /* 41 */ {"ABSV", "Absolute vorticity [/s]"}, - /* 42 */ {"ABSD", "Absolute divergence [/s]"}, - /* 43 */ {"RELV", "Relative vorticity [/s]"}, - /* 44 */ {"RELD", "Relative divergence [/s]"}, - /* 45 */ {"VUCSH", "Vertical u shear [/s]"}, - /* 46 */ {"VVCSH", "Vertical v shear [/s]"}, - /* 47 */ {"DIRC", "Direction of current [deg]"}, - /* 48 */ {"SPC", "Speed of current [m/s]"}, - /* 49 */ {"UOGRD", "u of current [m/s]"}, - /* 50 */ {"VOGRD", "v of current [m/s]"}, - /* 51 */ {"SPFH", "Specific humidity [kg/kg]"}, - /* 52 */ {"RH", "Relative humidity [%]"}, - /* 53 */ {"MIXR", "Humidity mixing ratio [kg/kg]"}, - /* 54 */ {"PWAT", "Precipitable water [kg/m^2]"}, - /* 55 */ {"VAPP", "Vapor pressure [Pa]"}, - /* 56 */ {"SATD", "Saturation deficit [Pa]"}, - /* 57 */ {"EVP", "Evaporation [kg/m^2]"}, - /* 58 */ {"CICE", "Cloud Ice [kg/kg]"}, - /* 59 */ {"PRATE", "Precipitation rate [kg/m^2/s]"}, - /* 60 */ {"TSTM", "Thunderstorm probability [%]"}, - /* 61 */ {"APCP", "Total precipitation [kg/m^2]"}, - /* 62 */ {"NCPCP", "Large scale precipitation [kg/m^2]"}, - /* 63 */ {"ACPCP", "Convective precipitation [kg/m^2]"}, - /* 64 */ {"SRWEQ", "Snowfall rate water equiv. [kg/m^2/s]"}, - /* 65 */ {"WEASD", "Accum. snow [kg/m^2]"}, - /* 66 */ {"SNOD", "Snow depth [m]"}, - /* 67 */ {"MIXHT", "Mixed layer depth [m]"}, - /* 68 */ {"TTHDP", "Transient thermocline depth [m]"}, - /* 69 */ {"MTHD", "Main thermocline depth [m]"}, - /* 70 */ {"MTHA", "Main thermocline anomaly [m]"}, - /* 71 */ {"TCDC", "Total cloud cover [%]"}, - /* 72 */ {"CDCON", "Convective cloud cover [%]"}, - /* 73 */ {"LCDC", "Low level cloud cover [%]"}, - /* 74 */ {"MCDC", "Mid level cloud cover [%]"}, - /* 75 */ {"HCDC", "High level cloud cover [%]"}, - /* 76 */ {"CWAT", "Cloud water [kg/m^2]"}, - /* 77 */ {"var77", "undefined"}, - /* 78 */ {"SNOC", "Convective snow [kg/m^2]"}, - /* 79 */ {"SNOL", "Large scale snow [kg/m^2]"}, - /* 80 */ {"WTMP", "Water temp. [K]"}, - /* 81 */ {"LAND", "Land-sea mask [1=land; 0=sea]"}, - /* 82 */ {"DSLM", "Deviation of sea level from mean [m]"}, - /* 83 */ {"SFCR", "Surface roughness [m]"}, - /* 84 */ {"ALBDO", "Albedo [%]"}, - /* 85 */ {"TSOIL", "Soil temp. [K]"}, - /* 86 */ {"SOILM", "Soil moisture content [kg/m^2]"}, - /* 87 */ {"VEG", "Vegetation [%]"}, - /* 88 */ {"SALTY", "Salinity [kg/kg]"}, - /* 89 */ {"DEN", "Density [kg/m^3]"}, - /* 90 */ {"RUNOF", "Runoff [kg/m^2]"}, - /* 91 */ {"ICEC", "Ice concentration [ice=1;no ice=0]"}, - /* 92 */ {"ICETK", "Ice thickness [m]"}, - /* 93 */ {"DICED", "Direction of ice drift [deg]"}, - /* 94 */ {"SICED", "Speed of ice drift [m/s]"}, - /* 95 */ {"UICE", "u of ice drift [m/s]"}, - /* 96 */ {"VICE", "v of ice drift [m/s]"}, - /* 97 */ {"ICEG", "Ice growth rate [m/s]"}, - /* 98 */ {"ICED", "Ice divergence [/s]"}, - /* 99 */ {"SNOM", "Snow melt [kg/m^2]"}, - /* 100 */ {"HTSGW", "Sig height of wind waves and swell [m]"}, - /* 101 */ {"WVDIR", "Direction of wind waves [deg]"}, - /* 102 */ {"WVHGT", "Sig height of wind waves [m]"}, - /* 103 */ {"WVPER", "Mean period of wind waves [s]"}, - /* 104 */ {"SWDIR", "Direction of swell waves [deg]"}, - /* 105 */ {"SWELL", "Sig height of swell waves [m]"}, - /* 106 */ {"SWPER", "Mean period of swell waves [s]"}, - /* 107 */ {"DIRPW", "Primary wave direction [deg]"}, - /* 108 */ {"PERPW", "Primary wave mean period [s]"}, - /* 109 */ {"DIRSW", "Secondary wave direction [deg]"}, - /* 110 */ {"PERSW", "Secondary wave mean period [s]"}, - /* 111 */ {"NSWRS", "Net short wave (surface) [W/m^2]"}, - /* 112 */ {"NLWRS", "Net long wave (surface) [W/m^2]"}, - /* 113 */ {"NSWRT", "Net short wave (top) [W/m^2]"}, - /* 114 */ {"NLWRT", "Net long wave (top) [W/m^2]"}, - /* 115 */ {"LWAVR", "Long wave [W/m^2]"}, - /* 116 */ {"SWAVR", "Short wave [W/m^2]"}, - /* 117 */ {"GRAD", "Global radiation [W/m^2]"}, - /* 118 */ {"var118", "undefined"}, - /* 119 */ {"var119", "undefined"}, - /* 120 */ {"var120", "undefined"}, - /* 121 */ {"LHTFL", "Latent heat flux [W/m^2]"}, - /* 122 */ {"SHTFL", "Sensible heat flux [W/m^2]"}, - /* 123 */ {"BLYDP", "Boundary layer dissipation [W/m^2]"}, - /* 124 */ {"UFLX", "Zonal momentum flux [N/m^2]"}, - /* 125 */ {"VFLX", "Meridional momentum flux [N/m^2]"}, - /* 126 */ {"WMIXE", "Wind mixing energy [J]"}, - /* 127 */ {"IMGD", "Image data [integer]"}, - /* 128 */ {"MSLSA", "Mean sea level pressure (Std Atm) [Pa]"}, - /* 129 */ {"MSLMA", "Mean sea level pressure (MAPS) [Pa]"}, - /* 130 */ {"MSLET", "Mean sea level pressure (ETA model) [Pa]"}, - /* 131 */ {"LFTX", "Surface lifted index [K]"}, - /* 132 */ {"4LFTX", "Best (4-layer) lifted index [K]"}, - /* 133 */ {"KX", "K index [K]"}, - /* 134 */ {"SX", "Sweat index [K]"}, - /* 135 */ {"MCONV", "Horizontal moisture divergence [kg/kg/s]"}, - /* 136 */ {"VSSH", "Vertical speed shear [1/s]"}, - /* 137 */ {"TSLSA", "3-hr pressure tendency [Pa/s]"}, - /* 138 */ {"BVF2", "Brunt-Vaisala frequency^2 [1/s^2]"}, - /* 139 */ {"PVMW", "Potential vorticity (mass-weighted) [1/s/m]"}, - /* 140 */ {"CRAIN", "Categorical rain [yes=1;no=0]"}, - /* 141 */ {"CFRZR", "Categorical freezing rain [yes=1;no=0]"}, - /* 142 */ {"CICEP", "Categorical ice pellets [yes=1;no=0]"}, - /* 143 */ {"CSNOW", "Categorical snow [yes=1;no=0]"}, - /* 144 */ {"SOILW", "Volumetric soil moisture [fraction]"}, - /* 145 */ {"PEVPR", "Potential evaporation rate [W/m^2]"}, - /* 146 */ {"CWORK", "Cloud work function [J/kg]"}, - /* 147 */ {"U-GWD", "Zonal gravity wave stress [N/m^2]"}, - /* 148 */ {"V-GWD", "Meridional gravity wave stress [N/m^2]"}, - /* 149 */ {"PV___", "Potential vorticity [m^2/s/kg]"}, - /* 150 */ {"var150", "undefined"}, - /* 151 */ {"var151", "undefined"}, - /* 152 */ {"var152", "undefined"}, - /* 153 */ {"MFXDV", "Moisture flux divergence [gr/gr*m/s/m]"}, - /* 154 */ {"var154", "undefined"}, - /* 155 */ {"GFLUX", "Ground heat flux [W/m^2]"}, - /* 156 */ {"CIN", "Convective inhibition [J/kg]"}, - /* 157 */ {"CAPE", "Convective Avail. Pot. Energy [J/kg]"}, - /* 158 */ {"TKE", "Turbulent kinetic energy [J/kg]"}, - /* 159 */ {"CONDP", "Lifted parcel condensation pressure [Pa]"}, - /* 160 */ {"CSUSF", "Clear sky upward solar flux [W/m^2]"}, - /* 161 */ {"CSDSF", "Clear sky downward solar flux [W/m^2]"}, - /* 162 */ {"CSULF", "Clear sky upward long wave flux [W/m^2]"}, - /* 163 */ {"CSDLF", "Clear sky downward long wave flux [W/m^2]"}, - /* 164 */ {"CFNSF", "Cloud forcing net solar flux [W/m^2]"}, - /* 165 */ {"CFNLF", "Cloud forcing net long wave flux [W/m^2]"}, - /* 166 */ {"VBDSF", "Visible beam downward solar flux [W/m^2]"}, - /* 167 */ {"VDDSF", "Visible diffuse downward solar flux [W/m^2]"}, - /* 168 */ {"NBDSF", "Near IR beam downward solar flux [W/m^2]"}, - /* 169 */ {"NDDSF", "Near IR diffuse downward solar flux [W/m^2]"}, - /* 170 */ {"USTR", "U wind stress [N/m^2]"}, - /* 171 */ {"VSTR", "V wind stress [N/m^2]"}, - /* 172 */ {"MFLX", "Momentum flux [N/m^2]"}, - /* 173 */ {"LMH", "Mass point model surface [integer]"}, - /* 174 */ {"LMV", "Velocity point model surface [integer]"}, - /* 175 */ {"SGLYR", "Nearby model level [integer]"}, - /* 176 */ {"NLAT", "Latitude [deg]"}, - /* 177 */ {"ELON", "Longitude [deg]"}, - /* 178 */ {"UMAS", "Mass weighted u [gm/m*K*s]"}, - /* 179 */ {"VMAS", "Mass weighted v [gm/m*K*s]"}, - /* 180 */ {"XPRATE", "corrected precip [kg/m^2/s]"}, - /* 181 */ {"LPSX", "x-gradient of log pressure [1/m]"}, - /* 182 */ {"LPSY", "y-gradient of log pressure [1/m]"}, - /* 183 */ {"HGTX", "x-gradient of height [m/m]"}, - /* 184 */ {"HGTY", "y-gradient of height [m/m]"}, - /* 185 */ {"STDZ", "Std dev of Geop. hgt. [m]"}, - /* 186 */ {"STDU", "Std dev of zonal wind [m/s]"}, - /* 187 */ {"STDV", "Std dev of meridional wind [m/s]"}, - /* 188 */ {"STDQ", "Std dev of spec. hum. [gm/gm]"}, - /* 189 */ {"STDT", "Std dev of temp. [K]"}, - /* 190 */ {"CBUW", "Covar. u and omega [m/s*Pa/s]"}, - /* 191 */ {"CBVW", "Covar. v and omega [m/s*Pa/s]"}, - /* 192 */ {"CBUQ", "Covar. u and specific hum [m/s*gm/gm]"}, - /* 193 */ {"CBVQ", "Covar. v and specific hum [m/s*gm/gm]"}, - /* 194 */ {"CBTW", "Covar. T and omega [K*Pa/s]"}, - /* 195 */ {"CBQW", "Covar. spec. hum and omega [gm/gm*Pa/s]"}, - /* 196 */ {"CBMZW", "Covar. v and u [m^2/s^2]"}, - /* 197 */ {"CBTZW", "Covar. u and T [K*m/s]"}, - /* 198 */ {"CBTMW", "Covar. v and T [K*m/s]"}, - /* 199 */ {"STDRH", "Std dev of Rel. Hum. [%]"}, - /* 200 */ {"SDTZ", "Std dev of time tend of geop. hgt [m]"}, - /* 201 */ {"ICWAT", "Ice-free water surface [%]"}, - /* 202 */ {"SDTU", "Std dev of time tend of zonal wind [m/s]"}, - /* 203 */ {"SDTV", "Std dev of time tend of merid wind [m/s]"}, - /* 204 */ {"DSWRF", "Downward solar radiation flux [W/m^2]"}, - /* 205 */ {"DLWRF", "Downward long wave flux [W/m^2]"}, - /* 206 */ {"SDTQ", "Std dev of time tend of spec. hum [gm/gm]"}, - /* 207 */ {"MSTAV", "Moisture availability [%]"}, - /* 208 */ {"SFEXC", "Exchange coefficient [kg*m/m^3/s]"}, - /* 209 */ {"MIXLY", "No. of mixed layers next to sfc [integer]"}, - /* 210 */ {"SDTT", "Std dev of time tend of temp. [K]"}, - /* 211 */ {"USWRF", "Upward solar radiation flux [W/m^2]"}, - /* 212 */ {"ULWRF", "Upward long wave flux [W/m^2]"}, - /* 213 */ {"CDLYR", "Non-convective cloud [%]"}, - /* 214 */ {"CPRAT", "Convective precip. rate [kg/m^2/s]"}, - /* 215 */ {"TTDIA", "Temp. tendency by all physics [K/s]"}, - /* 216 */ {"TTRAD", "Temp. tendency by all radiation [K/s]"}, - /* 217 */ {"TTPHY", "Temp. tendency by nonrad physics [K/s]"}, - /* 218 */ {"PREIX", "Precipitation index [fraction]"}, - /* 219 */ {"TSD1D", "Std dev of IR T over 1x1 deg area [K]"}, - /* 220 */ {"NLSGP", "Natural log of surface pressure [ln(kPa)]"}, - /* 221 */ {"SDTRH", "Std dev of time tend of rel hum [%]"}, - /* 222 */ {"5WAVH", "5-wave geopotential height [gpm]"}, - /* 223 */ {"CNWAT", "Plant canopy surface water [kg/m^2]"}, - /* 224 */ {"PLTRS", "Max. stomato plant resistance [s/m]"}, - /* 225 */ {"RHCLD", "RH-type cloud cover [%]"}, - /* 226 */ {"BMIXL", "Blackadar's mixing length scale [m]"}, - /* 227 */ {"AMIXL", "Asymptotic mixing length scale [m]"}, - /* 228 */ {"PEVAP", "Pot. evaporation [kg/m^2]"}, - /* 229 */ {"SNOHF", "Snow melt heat flux [W/m^2]"}, - /* 230 */ {"SNOEV", "Snow sublimation heat flux [W/m^2]"}, - /* 231 */ {"MFLUX", "Convective cloud mass flux [Pa/s]"}, - /* 232 */ {"DTRF", "Downward total radiation flux [W/m^2]"}, - /* 233 */ {"UTRF", "Upward total radiation flux [W/m^2]"}, - /* 234 */ {"BGRUN", "Baseflow-groundwater runoff [kg/m^2]"}, - /* 235 */ {"SSRUN", "Storm surface runoff [kg/m^2]"}, - /* 236 */ {"var236", "undefined"}, - /* 237 */ {"OZONE", "Total column ozone [Dobson]"}, - /* 238 */ {"SNOWC", "Snow cover [%]"}, - /* 239 */ {"SNOT", "Snow temp. [K]"}, - /* 240 */ {"GLCR", "Permanent snow points [mask]"}, - /* 241 */ {"LRGHR", "Large scale condensation heating [K/s]"}, - /* 242 */ {"CNVHR", "Deep convective heating [K/s]"}, - /* 243 */ {"CNVMR", "Deep convective moistening [kg/kg/s]"}, - /* 244 */ {"SHAHR", "Shallow convective heating [K/s]"}, - /* 245 */ {"SHAMR", "Shallow convective moistening [kg/kg/s]"}, - /* 246 */ {"VDFHR", "Vertical diffusion heating [K/s]"}, - /* 247 */ {"VDFUA", "Vertical diffusion zonal accel [m/s^2]"}, - /* 248 */ {"VDFVA", "Vertical diffusion meridional accel [m/s^2]"}, - /* 249 */ {"VDFMR", "Vertical diffusion moistening [kg/kg/s]"}, - /* 250 */ {"SWHR", "Solar radiative heating [K/s]"}, - /* 251 */ {"LWHR", "Longwave radiative heating [K/s]"}, - /* 252 */ {"CD", "Drag coefficient [non-dim]"}, - /* 253 */ {"FRICV", "Friction velocity [m/s]"}, - /* 254 */ {"RI", "Richardson number [non-dim]"}, - /* 255 */ {"var255", "undefined"}, + /* 0 */ {"var0", "undefined"}, + /* 1 */ {"PRES", "Pressure [Pa]"}, + /* 2 */ {"PRMSL", "Pressure reduced to MSL [Pa]"}, + /* 3 */ {"PTEND", "Pressure tendency [Pa/s]"}, + /* 4 */ {"var4", "undefined"}, + /* 5 */ {"var5", "undefined"}, + /* 6 */ {"GP", "Geopotential [m^2/s^2]"}, + /* 7 */ {"HGT", "Geopotential height [gpm]"}, + /* 8 */ {"DIST", "Geometric height [m]"}, + /* 9 */ {"HSTDV", "Std dev of height [m]"}, + /* 10 */ {"HVAR", "Variance of height [m^2]"}, + /* 11 */ {"TMP", "Temp. [K]"}, + /* 12 */ {"VTMP", "Virtual temp. [K]"}, + /* 13 */ {"POT", "Potential temp. [K]"}, + /* 14 */ {"EPOT", "Pseudo-adiabatic pot. temp. [K]"}, + /* 15 */ {"TMAX", "Max. temp. [K]"}, + /* 16 */ {"TMIN", "Min. temp. [K]"}, + /* 17 */ {"DPT", "Dew point temp. [K]"}, + /* 18 */ {"DEPR", "Dew point depression [K]"}, + /* 19 */ {"LAPR", "Lapse rate [K/m]"}, + /* 20 */ {"VISIB", "Visibility [m]"}, + /* 21 */ {"RDSP1", "Radar spectra (1) [non-dim]"}, + /* 22 */ {"RDSP2", "Radar spectra (2) [non-dim]"}, + /* 23 */ {"RDSP3", "Radar spectra (3) [non-dim]"}, + /* 24 */ {"var24", "undefined"}, + /* 25 */ {"TMPA", "Temp. anomaly [K]"}, + /* 26 */ {"PRESA", "Pressure anomaly [Pa]"}, + /* 27 */ {"GPA", "Geopotential height anomaly [gpm]"}, + /* 28 */ {"WVSP1", "Wave spectra (1) [non-dim]"}, + /* 29 */ {"WVSP2", "Wave spectra (2) [non-dim]"}, + /* 30 */ {"WVSP3", "Wave spectra (3) [non-dim]"}, + /* 31 */ {"WDIR", "Wind direction [deg]"}, + /* 32 */ {"WIND", "Wind speed [m/s]"}, + /* 33 */ {"UGRD", "u wind [m/s]"}, + /* 34 */ {"VGRD", "v wind [m/s]"}, + /* 35 */ {"STRM", "Stream function [m^2/s]"}, + /* 36 */ {"VPOT", "Velocity potential [m^2/s]"}, + /* 37 */ {"MNTSF", "Montgomery stream function [m^2/s^2]"}, + /* 38 */ {"SGCVV", "Sigma coord. vertical velocity [/s]"}, + /* 39 */ {"VVEL", "Pressure vertical velocity [Pa/s]"}, + /* 40 */ {"DZDT", "Geometric vertical velocity [m/s]"}, + /* 41 */ {"ABSV", "Absolute vorticity [/s]"}, + /* 42 */ {"ABSD", "Absolute divergence [/s]"}, + /* 43 */ {"RELV", "Relative vorticity [/s]"}, + /* 44 */ {"RELD", "Relative divergence [/s]"}, + /* 45 */ {"VUCSH", "Vertical u shear [/s]"}, + /* 46 */ {"VVCSH", "Vertical v shear [/s]"}, + /* 47 */ {"DIRC", "Direction of current [deg]"}, + /* 48 */ {"SPC", "Speed of current [m/s]"}, + /* 49 */ {"UOGRD", "u of current [m/s]"}, + /* 50 */ {"VOGRD", "v of current [m/s]"}, + /* 51 */ {"SPFH", "Specific humidity [kg/kg]"}, + /* 52 */ {"RH", "Relative humidity [%]"}, + /* 53 */ {"MIXR", "Humidity mixing ratio [kg/kg]"}, + /* 54 */ {"PWAT", "Precipitable water [kg/m^2]"}, + /* 55 */ {"VAPP", "Vapor pressure [Pa]"}, + /* 56 */ {"SATD", "Saturation deficit [Pa]"}, + /* 57 */ {"EVP", "Evaporation [kg/m^2]"}, + /* 58 */ {"CICE", "Cloud Ice [kg/kg]"}, + /* 59 */ {"PRATE", "Precipitation rate [kg/m^2/s]"}, + /* 60 */ {"TSTM", "Thunderstorm probability [%]"}, + /* 61 */ {"APCP", "Total precipitation [kg/m^2]"}, + /* 62 */ {"NCPCP", "Large scale precipitation [kg/m^2]"}, + /* 63 */ {"ACPCP", "Convective precipitation [kg/m^2]"}, + /* 64 */ {"SRWEQ", "Snowfall rate water equiv. [kg/m^2/s]"}, + /* 65 */ {"WEASD", "Accum. snow [kg/m^2]"}, + /* 66 */ {"SNOD", "Snow depth [m]"}, + /* 67 */ {"MIXHT", "Mixed layer depth [m]"}, + /* 68 */ {"TTHDP", "Transient thermocline depth [m]"}, + /* 69 */ {"MTHD", "Main thermocline depth [m]"}, + /* 70 */ {"MTHA", "Main thermocline anomaly [m]"}, + /* 71 */ {"TCDC", "Total cloud cover [%]"}, + /* 72 */ {"CDCON", "Convective cloud cover [%]"}, + /* 73 */ {"LCDC", "Low level cloud cover [%]"}, + /* 74 */ {"MCDC", "Mid level cloud cover [%]"}, + /* 75 */ {"HCDC", "High level cloud cover [%]"}, + /* 76 */ {"CWAT", "Cloud water [kg/m^2]"}, + /* 77 */ {"var77", "undefined"}, + /* 78 */ {"SNOC", "Convective snow [kg/m^2]"}, + /* 79 */ {"SNOL", "Large scale snow [kg/m^2]"}, + /* 80 */ {"WTMP", "Water temp. [K]"}, + /* 81 */ {"LAND", "Land-sea mask [1=land; 0=sea]"}, + /* 82 */ {"DSLM", "Deviation of sea level from mean [m]"}, + /* 83 */ {"SFCR", "Surface roughness [m]"}, + /* 84 */ {"ALBDO", "Albedo [%]"}, + /* 85 */ {"TSOIL", "Soil temp. [K]"}, + /* 86 */ {"SOILM", "Soil moisture content [kg/m^2]"}, + /* 87 */ {"VEG", "Vegetation [%]"}, + /* 88 */ {"SALTY", "Salinity [kg/kg]"}, + /* 89 */ {"DEN", "Density [kg/m^3]"}, + /* 90 */ {"RUNOF", "Runoff [kg/m^2]"}, + /* 91 */ {"ICEC", "Ice concentration [ice=1;no ice=0]"}, + /* 92 */ {"ICETK", "Ice thickness [m]"}, + /* 93 */ {"DICED", "Direction of ice drift [deg]"}, + /* 94 */ {"SICED", "Speed of ice drift [m/s]"}, + /* 95 */ {"UICE", "u of ice drift [m/s]"}, + /* 96 */ {"VICE", "v of ice drift [m/s]"}, + /* 97 */ {"ICEG", "Ice growth rate [m/s]"}, + /* 98 */ {"ICED", "Ice divergence [/s]"}, + /* 99 */ {"SNOM", "Snow melt [kg/m^2]"}, + /* 100 */ {"HTSGW", "Sig height of wind waves and swell [m]"}, + /* 101 */ {"WVDIR", "Direction of wind waves [deg]"}, + /* 102 */ {"WVHGT", "Sig height of wind waves [m]"}, + /* 103 */ {"WVPER", "Mean period of wind waves [s]"}, + /* 104 */ {"SWDIR", "Direction of swell waves [deg]"}, + /* 105 */ {"SWELL", "Sig height of swell waves [m]"}, + /* 106 */ {"SWPER", "Mean period of swell waves [s]"}, + /* 107 */ {"DIRPW", "Primary wave direction [deg]"}, + /* 108 */ {"PERPW", "Primary wave mean period [s]"}, + /* 109 */ {"DIRSW", "Secondary wave direction [deg]"}, + /* 110 */ {"PERSW", "Secondary wave mean period [s]"}, + /* 111 */ {"NSWRS", "Net short wave (surface) [W/m^2]"}, + /* 112 */ {"NLWRS", "Net long wave (surface) [W/m^2]"}, + /* 113 */ {"NSWRT", "Net short wave (top) [W/m^2]"}, + /* 114 */ {"NLWRT", "Net long wave (top) [W/m^2]"}, + /* 115 */ {"LWAVR", "Long wave [W/m^2]"}, + /* 116 */ {"SWAVR", "Short wave [W/m^2]"}, + /* 117 */ {"GRAD", "Global radiation [W/m^2]"}, + /* 118 */ {"var118", "undefined"}, + /* 119 */ {"var119", "undefined"}, + /* 120 */ {"var120", "undefined"}, + /* 121 */ {"LHTFL", "Latent heat flux [W/m^2]"}, + /* 122 */ {"SHTFL", "Sensible heat flux [W/m^2]"}, + /* 123 */ {"BLYDP", "Boundary layer dissipation [W/m^2]"}, + /* 124 */ {"UFLX", "Zonal momentum flux [N/m^2]"}, + /* 125 */ {"VFLX", "Meridional momentum flux [N/m^2]"}, + /* 126 */ {"WMIXE", "Wind mixing energy [J]"}, + /* 127 */ {"IMGD", "Image data [integer]"}, + /* 128 */ {"MSLSA", "Mean sea level pressure (Std Atm) [Pa]"}, + /* 129 */ {"MSLMA", "Mean sea level pressure (MAPS) [Pa]"}, + /* 130 */ {"MSLET", "Mean sea level pressure (ETA model) [Pa]"}, + /* 131 */ {"LFTX", "Surface lifted index [K]"}, + /* 132 */ {"4LFTX", "Best (4-layer) lifted index [K]"}, + /* 133 */ {"KX", "K index [K]"}, + /* 134 */ {"SX", "Sweat index [K]"}, + /* 135 */ {"MCONV", "Horizontal moisture divergence [kg/kg/s]"}, + /* 136 */ {"VSSH", "Vertical speed shear [1/s]"}, + /* 137 */ {"TSLSA", "3-hr pressure tendency [Pa/s]"}, + /* 138 */ {"BVF2", "Brunt-Vaisala frequency^2 [1/s^2]"}, + /* 139 */ {"PVMW", "Potential vorticity (mass-weighted) [1/s/m]"}, + /* 140 */ {"CRAIN", "Categorical rain [yes=1;no=0]"}, + /* 141 */ {"CFRZR", "Categorical freezing rain [yes=1;no=0]"}, + /* 142 */ {"CICEP", "Categorical ice pellets [yes=1;no=0]"}, + /* 143 */ {"CSNOW", "Categorical snow [yes=1;no=0]"}, + /* 144 */ {"SOILW", "Volumetric soil moisture [fraction]"}, + /* 145 */ {"PEVPR", "Potential evaporation rate [W/m^2]"}, + /* 146 */ {"CWORK", "Cloud work function [J/kg]"}, + /* 147 */ {"U-GWD", "Zonal gravity wave stress [N/m^2]"}, + /* 148 */ {"V-GWD", "Meridional gravity wave stress [N/m^2]"}, + /* 149 */ {"PV___", "Potential vorticity [m^2/s/kg]"}, + /* 150 */ {"var150", "undefined"}, + /* 151 */ {"var151", "undefined"}, + /* 152 */ {"var152", "undefined"}, + /* 153 */ {"MFXDV", "Moisture flux divergence [gr/gr*m/s/m]"}, + /* 154 */ {"var154", "undefined"}, + /* 155 */ {"GFLUX", "Ground heat flux [W/m^2]"}, + /* 156 */ {"CIN", "Convective inhibition [J/kg]"}, + /* 157 */ {"CAPE", "Convective Avail. Pot. Energy [J/kg]"}, + /* 158 */ {"TKE", "Turbulent kinetic energy [J/kg]"}, + /* 159 */ {"CONDP", "Lifted parcel condensation pressure [Pa]"}, + /* 160 */ {"CSUSF", "Clear sky upward solar flux [W/m^2]"}, + /* 161 */ {"CSDSF", "Clear sky downward solar flux [W/m^2]"}, + /* 162 */ {"CSULF", "Clear sky upward long wave flux [W/m^2]"}, + /* 163 */ {"CSDLF", "Clear sky downward long wave flux [W/m^2]"}, + /* 164 */ {"CFNSF", "Cloud forcing net solar flux [W/m^2]"}, + /* 165 */ {"CFNLF", "Cloud forcing net long wave flux [W/m^2]"}, + /* 166 */ {"VBDSF", "Visible beam downward solar flux [W/m^2]"}, + /* 167 */ {"VDDSF", "Visible diffuse downward solar flux [W/m^2]"}, + /* 168 */ {"NBDSF", "Near IR beam downward solar flux [W/m^2]"}, + /* 169 */ {"NDDSF", "Near IR diffuse downward solar flux [W/m^2]"}, + /* 170 */ {"USTR", "U wind stress [N/m^2]"}, + /* 171 */ {"VSTR", "V wind stress [N/m^2]"}, + /* 172 */ {"MFLX", "Momentum flux [N/m^2]"}, + /* 173 */ {"LMH", "Mass point model surface [integer]"}, + /* 174 */ {"LMV", "Velocity point model surface [integer]"}, + /* 175 */ {"SGLYR", "Nearby model level [integer]"}, + /* 176 */ {"NLAT", "Latitude [deg]"}, + /* 177 */ {"ELON", "Longitude [deg]"}, + /* 178 */ {"UMAS", "Mass weighted u [gm/m*K*s]"}, + /* 179 */ {"VMAS", "Mass weighted v [gm/m*K*s]"}, + /* 180 */ {"XPRATE", "corrected precip [kg/m^2/s]"}, + /* 181 */ {"LPSX", "x-gradient of log pressure [1/m]"}, + /* 182 */ {"LPSY", "y-gradient of log pressure [1/m]"}, + /* 183 */ {"HGTX", "x-gradient of height [m/m]"}, + /* 184 */ {"HGTY", "y-gradient of height [m/m]"}, + /* 185 */ {"STDZ", "Std dev of Geop. hgt. [m]"}, + /* 186 */ {"STDU", "Std dev of zonal wind [m/s]"}, + /* 187 */ {"STDV", "Std dev of meridional wind [m/s]"}, + /* 188 */ {"STDQ", "Std dev of spec. hum. [gm/gm]"}, + /* 189 */ {"STDT", "Std dev of temp. [K]"}, + /* 190 */ {"CBUW", "Covar. u and omega [m/s*Pa/s]"}, + /* 191 */ {"CBVW", "Covar. v and omega [m/s*Pa/s]"}, + /* 192 */ {"CBUQ", "Covar. u and specific hum [m/s*gm/gm]"}, + /* 193 */ {"CBVQ", "Covar. v and specific hum [m/s*gm/gm]"}, + /* 194 */ {"CBTW", "Covar. T and omega [K*Pa/s]"}, + /* 195 */ {"CBQW", "Covar. spec. hum and omega [gm/gm*Pa/s]"}, + /* 196 */ {"CBMZW", "Covar. v and u [m^2/s^2]"}, + /* 197 */ {"CBTZW", "Covar. u and T [K*m/s]"}, + /* 198 */ {"CBTMW", "Covar. v and T [K*m/s]"}, + /* 199 */ {"STDRH", "Std dev of Rel. Hum. [%]"}, + /* 200 */ {"SDTZ", "Std dev of time tend of geop. hgt [m]"}, + /* 201 */ {"ICWAT", "Ice-free water surface [%]"}, + /* 202 */ {"SDTU", "Std dev of time tend of zonal wind [m/s]"}, + /* 203 */ {"SDTV", "Std dev of time tend of merid wind [m/s]"}, + /* 204 */ {"DSWRF", "Downward solar radiation flux [W/m^2]"}, + /* 205 */ {"DLWRF", "Downward long wave flux [W/m^2]"}, + /* 206 */ {"SDTQ", "Std dev of time tend of spec. hum [gm/gm]"}, + /* 207 */ {"MSTAV", "Moisture availability [%]"}, + /* 208 */ {"SFEXC", "Exchange coefficient [kg*m/m^3/s]"}, + /* 209 */ {"MIXLY", "No. of mixed layers next to sfc [integer]"}, + /* 210 */ {"SDTT", "Std dev of time tend of temp. [K]"}, + /* 211 */ {"USWRF", "Upward solar radiation flux [W/m^2]"}, + /* 212 */ {"ULWRF", "Upward long wave flux [W/m^2]"}, + /* 213 */ {"CDLYR", "Non-convective cloud [%]"}, + /* 214 */ {"CPRAT", "Convective precip. rate [kg/m^2/s]"}, + /* 215 */ {"TTDIA", "Temp. tendency by all physics [K/s]"}, + /* 216 */ {"TTRAD", "Temp. tendency by all radiation [K/s]"}, + /* 217 */ {"TTPHY", "Temp. tendency by nonrad physics [K/s]"}, + /* 218 */ {"PREIX", "Precipitation index [fraction]"}, + /* 219 */ {"TSD1D", "Std dev of IR T over 1x1 deg area [K]"}, + /* 220 */ {"NLSGP", "Natural log of surface pressure [ln(kPa)]"}, + /* 221 */ {"SDTRH", "Std dev of time tend of rel hum [%]"}, + /* 222 */ {"5WAVH", "5-wave geopotential height [gpm]"}, + /* 223 */ {"CNWAT", "Plant canopy surface water [kg/m^2]"}, + /* 224 */ {"PLTRS", "Max. stomato plant resistance [s/m]"}, + /* 225 */ {"RHCLD", "RH-type cloud cover [%]"}, + /* 226 */ {"BMIXL", "Blackadar's mixing length scale [m]"}, + /* 227 */ {"AMIXL", "Asymptotic mixing length scale [m]"}, + /* 228 */ {"PEVAP", "Pot. evaporation [kg/m^2]"}, + /* 229 */ {"SNOHF", "Snow melt heat flux [W/m^2]"}, + /* 230 */ {"SNOEV", "Snow sublimation heat flux [W/m^2]"}, + /* 231 */ {"MFLUX", "Convective cloud mass flux [Pa/s]"}, + /* 232 */ {"DTRF", "Downward total radiation flux [W/m^2]"}, + /* 233 */ {"UTRF", "Upward total radiation flux [W/m^2]"}, + /* 234 */ {"BGRUN", "Baseflow-groundwater runoff [kg/m^2]"}, + /* 235 */ {"SSRUN", "Storm surface runoff [kg/m^2]"}, + /* 236 */ {"var236", "undefined"}, + /* 237 */ {"OZONE", "Total column ozone [Dobson]"}, + /* 238 */ {"SNOWC", "Snow cover [%]"}, + /* 239 */ {"SNOT", "Snow temp. [K]"}, + /* 240 */ {"GLCR", "Permanent snow points [mask]"}, + /* 241 */ {"LRGHR", "Large scale condensation heating [K/s]"}, + /* 242 */ {"CNVHR", "Deep convective heating [K/s]"}, + /* 243 */ {"CNVMR", "Deep convective moistening [kg/kg/s]"}, + /* 244 */ {"SHAHR", "Shallow convective heating [K/s]"}, + /* 245 */ {"SHAMR", "Shallow convective moistening [kg/kg/s]"}, + /* 246 */ {"VDFHR", "Vertical diffusion heating [K/s]"}, + /* 247 */ {"VDFUA", "Vertical diffusion zonal accel [m/s^2]"}, + /* 248 */ {"VDFVA", "Vertical diffusion meridional accel [m/s^2]"}, + /* 249 */ {"VDFMR", "Vertical diffusion moistening [kg/kg/s]"}, + /* 250 */ {"SWHR", "Solar radiative heating [K/s]"}, + /* 251 */ {"LWHR", "Longwave radiative heating [K/s]"}, + /* 252 */ {"CD", "Drag coefficient [non-dim]"}, + /* 253 */ {"FRICV", "Friction velocity [m/s]"}, + /* 254 */ {"RI", "Richardson number [non-dim]"}, + /* 255 */ {"var255", "undefined"}, }; const struct ParmTable parm_table_nceptab_131[256] = { - /* 0 */ {"var0", "undefined"}, - /* 1 */ {"PRES", "Pressure [Pa]"}, - /* 2 */ {"PRMSL", "Pressure reduced to MSL [Pa]"}, - /* 3 */ {"PTEND", "Pressure tendency [Pa/s]"}, - /* 4 */ {"PVORT", "Pot. vorticity [km^2/kg/s]"}, - /* 5 */ {"ICAHT", "ICAO Standard Atmosphere Reference Height [M]"}, - /* 6 */ {"GP", "Geopotential [m^2/s^2]"}, - /* 7 */ {"HGT", "Geopotential height [gpm]"}, - /* 8 */ {"DIST", "Geometric height [m]"}, - /* 9 */ {"HSTDV", "Std dev of height [m]"}, - /* 10 */ {"TOZNE", "Total ozone [Dobson]"}, - /* 11 */ {"TMP", "Temp. [K]"}, - /* 12 */ {"VTMP", "Virtual temp. [K]"}, - /* 13 */ {"POT", "Potential temp. [K]"}, - /* 14 */ {"EPOT", "Pseudo-adiabatic pot. temp. [K]"}, - /* 15 */ {"TMAX", "Max. temp. [K]"}, - /* 16 */ {"TMIN", "Min. temp. [K]"}, - /* 17 */ {"DPT", "Dew point temp. [K]"}, - /* 18 */ {"DEPR", "Dew point depression [K]"}, - /* 19 */ {"LAPR", "Lapse rate [K/m]"}, - /* 20 */ {"VIS", "Visibility [m]"}, - /* 21 */ {"RDSP1", "Radar spectra (1) [non-dim]"}, - /* 22 */ {"RDSP2", "Radar spectra (2) [non-dim]"}, - /* 23 */ {"RDSP3", "Radar spectra (3) [non-dim]"}, - /* 24 */ {"PLI", "Parcel lifted index (to 500 hPa) [K]"}, - /* 25 */ {"TMPA", "Temp. anomaly [K]"}, - /* 26 */ {"PRESA", "Pressure anomaly [Pa]"}, - /* 27 */ {"GPA", "Geopotential height anomaly [gpm]"}, - /* 28 */ {"WVSP1", "Wave spectra (1) [non-dim]"}, - /* 29 */ {"WVSP2", "Wave spectra (2) [non-dim]"}, - /* 30 */ {"WVSP3", "Wave spectra (3) [non-dim]"}, - /* 31 */ {"WDIR", "Wind direction [deg]"}, - /* 32 */ {"WIND", "Wind speed [m/s]"}, - /* 33 */ {"UGRD", "u wind [m/s]"}, - /* 34 */ {"VGRD", "v wind [m/s]"}, - /* 35 */ {"STRM", "Stream function [m^2/s]"}, - /* 36 */ {"VPOT", "Velocity potential [m^2/s]"}, - /* 37 */ {"MNTSF", "Montgomery stream function [m^2/s^2]"}, - /* 38 */ {"SGCVV", "Sigma coord. vertical velocity [/s]"}, - /* 39 */ {"VVEL", "Pressure vertical velocity [Pa/s]"}, - /* 40 */ {"DZDT", "Geometric vertical velocity [m/s]"}, - /* 41 */ {"ABSV", "Absolute vorticity [/s]"}, - /* 42 */ {"ABSD", "Absolute divergence [/s]"}, - /* 43 */ {"RELV", "Relative vorticity [/s]"}, - /* 44 */ {"RELD", "Relative divergence [/s]"}, - /* 45 */ {"VUCSH", "Vertical u shear [/s]"}, - /* 46 */ {"VVCSH", "Vertical v shear [/s]"}, - /* 47 */ {"DIRC", "Direction of current [deg]"}, - /* 48 */ {"SPC", "Speed of current [m/s]"}, - /* 49 */ {"UOGRD", "u of current [m/s]"}, - /* 50 */ {"VOGRD", "v of current [m/s]"}, - /* 51 */ {"SPFH", "Specific humidity [kg/kg]"}, - /* 52 */ {"RH", "Relative humidity [%]"}, - /* 53 */ {"MIXR", "Humidity mixing ratio [kg/kg]"}, - /* 54 */ {"PWAT", "Precipitable water [kg/m^2]"}, - /* 55 */ {"VAPP", "Vapor pressure [Pa]"}, - /* 56 */ {"SATD", "Saturation deficit [Pa]"}, - /* 57 */ {"EVP", "Evaporation [kg/m^2]"}, - /* 58 */ {"CICE", "Cloud Ice [kg/m^2]"}, - /* 59 */ {"PRATE", "Precipitation rate [kg/m^2/s]"}, - /* 60 */ {"TSTM", "Thunderstorm probability [%]"}, - /* 61 */ {"APCP", "Total precipitation [kg/m^2]"}, - /* 62 */ {"NCPCP", "Large scale precipitation [kg/m^2]"}, - /* 63 */ {"ACPCP", "Convective precipitation [kg/m^2]"}, - /* 64 */ {"SRWEQ", "Snowfall rate water equiv. [kg/m^2/s]"}, - /* 65 */ {"WEASD", "Accum. snow [kg/m^2]"}, - /* 66 */ {"SNOD", "Snow depth [m]"}, - /* 67 */ {"MIXHT", "Mixed layer depth [m]"}, - /* 68 */ {"TTHDP", "Transient thermocline depth [m]"}, - /* 69 */ {"MTHD", "Main thermocline depth [m]"}, - /* 70 */ {"MTHA", "Main thermocline anomaly [m]"}, - /* 71 */ {"TCDC", "Total cloud cover [%]"}, - /* 72 */ {"CDCON", "Convective cloud cover [%]"}, - /* 73 */ {"LCDC", "Low level cloud cover [%]"}, - /* 74 */ {"MCDC", "Mid level cloud cover [%]"}, - /* 75 */ {"HCDC", "High level cloud cover [%]"}, - /* 76 */ {"CWAT", "Cloud water [kg/m^2]"}, - /* 77 */ {"BLI", "Best lifted index (to 500 hPa) [K]"}, - /* 78 */ {"SNOC", "Convective snow [kg/m^2]"}, - /* 79 */ {"SNOL", "Large scale snow [kg/m^2]"}, - /* 80 */ {"WTMP", "Water temp. [K]"}, - /* 81 */ {"LAND", "Land-sea coverage (land=1;sea=0) [fraction]"}, - /* 82 */ {"DSLM", "Deviation of sea level from mean [m]"}, - /* 83 */ {"SFCR", "Surface roughness [m]"}, - /* 84 */ {"ALBDO", "Albedo [%]"}, - /* 85 */ {"TSOIL", "Soil temp. [K]"}, - /* 86 */ {"SOILM", "Soil moisture content [kg/m^2]"}, - /* 87 */ {"VEG", "Vegetation [%]"}, - /* 88 */ {"SALTY", "Salinity [kg/kg]"}, - /* 89 */ {"DEN", "Density [kg/m^3]"}, - /* 90 */ {"WATR", "Water runoff [kg/m^2]"}, - /* 91 */ {"ICEC", "Ice concentration (ice=1;no ice=0) [fraction]"}, - /* 92 */ {"ICETK", "Ice thickness [m]"}, - /* 93 */ {"DICED", "Direction of ice drift [deg]"}, - /* 94 */ {"SICED", "Speed of ice drift [m/s]"}, - /* 95 */ {"UICE", "u of ice drift [m/s]"}, - /* 96 */ {"VICE", "v of ice drift [m/s]"}, - /* 97 */ {"ICEG", "Ice growth rate [m/s]"}, - /* 98 */ {"ICED", "Ice divergence [/s]"}, - /* 99 */ {"SNOM", "Snow melt [kg/m^2]"}, - /* 100 */ {"HTSGW", "Sig height of wind waves and swell [m]"}, - /* 101 */ {"WVDIR", "Direction of wind waves [deg]"}, - /* 102 */ {"WVHGT", "Sig height of wind waves [m]"}, - /* 103 */ {"WVPER", "Mean period of wind waves [s]"}, - /* 104 */ {"SWDIR", "Direction of swell waves [deg]"}, - /* 105 */ {"SWELL", "Sig height of swell waves [m]"}, - /* 106 */ {"SWPER", "Mean period of swell waves [s]"}, - /* 107 */ {"DIRPW", "Primary wave direction [deg]"}, - /* 108 */ {"PERPW", "Primary wave mean period [s]"}, - /* 109 */ {"DIRSW", "Secondary wave direction [deg]"}, - /* 110 */ {"PERSW", "Secondary wave mean period [s]"}, - /* 111 */ {"NSWRS", "Net short wave (surface) [W/m^2]"}, - /* 112 */ {"NLWRS", "Net long wave (surface) [W/m^2]"}, - /* 113 */ {"NSWRT", "Net short wave (top) [W/m^2]"}, - /* 114 */ {"NLWRT", "Net long wave (top) [W/m^2]"}, - /* 115 */ {"LWAVR", "Long wave [W/m^2]"}, - /* 116 */ {"SWAVR", "Short wave [W/m^2]"}, - /* 117 */ {"GRAD", "Global radiation [W/m^2]"}, - /* 118 */ {"BRTMP", "Brightness temperature [K]"}, - /* 119 */ {"LWRAD", "Radiance with respect to wave no. [W/m/sr]"}, - /* 120 */ {"SWRAD", "Radiance with respect ot wave len. [W/m^3/sr]"}, - /* 121 */ {"LHTFL", "Latent heat flux [W/m^2]"}, - /* 122 */ {"SHTFL", "Sensible heat flux [W/m^2]"}, - /* 123 */ {"BLYDP", "Boundary layer dissipation [W/m^2]"}, - /* 124 */ {"UFLX", "Zonal momentum flux [N/m^2]"}, - /* 125 */ {"VFLX", "Meridional momentum flux [N/m^2]"}, - /* 126 */ {"WMIXE", "Wind mixing energy [J]"}, - /* 127 */ {"IMGD", "Image data []"}, - /* 128 */ {"MSLSA", "Mean sea level pressure (Std Atm) [Pa]"}, - /* 129 */ {"var129", "undefined"}, - /* 130 */ {"MSLET", "Mean sea level pressure (ETA model) [Pa]"}, - /* 131 */ {"LFTX", "Surface lifted index [K]"}, - /* 132 */ {"4LFTX", "Best (4-layer) lifted index [K]"}, - /* 133 */ {"var133", "undefined"}, - /* 134 */ {"PRESN", "Pressure (nearest grid point) [Pa]"}, - /* 135 */ {"MCONV", "Horizontal moisture divergence [kg/kg/s]"}, - /* 136 */ {"VWSH", "Vertical speed shear [1/s]"}, - /* 137 */ {"LTNGSD", "Lightning strike density [1/m^2/s]"}, - /* 138 */ {"var138", "undefined"}, - /* 139 */ {"PVMW", "Potential vorticity (mass-weighted) [1/s/m]"}, - /* 140 */ {"CRAIN", "Categorical rain [yes=1;no=0]"}, - /* 141 */ {"CFRZR", "Categorical freezing rain [yes=1;no=0]"}, - /* 142 */ {"CICEP", "Categorical ice pellets [yes=1;no=0]"}, - /* 143 */ {"CSNOW", "Categorical snow [yes=1;no=0]"}, - /* 144 */ {"SOILW", "Volumetric soil moisture (frozen + liquid) [fraction]"}, - /* 145 */ {"PEVPR", "Potential evaporation rate [W/m^2]"}, - /* 146 */ {"VEGT", "Vegetation canopy temperature [K]"}, - /* 147 */ {"BARET", "Bare soil surface skin temperature [K]"}, - /* 148 */ {"AVSFT", "Average surface skin temperature [K]"}, - /* 149 */ {"RADT", "Effective radiative skin temperature [K]"}, - /* 150 */ {"SSTOR", "Surface water storage [kg/m^2]"}, - /* 151 */ {"LSOIL", "Liquid soil moisture content (non-frozen) [kg/m^2]"}, - /* 152 */ {"EWATR", "Open water evaporation (standing water) [W/m^2]"}, - /* 153 */ {"CLWMR", "Cloud water [kg/kg]"}, - /* 154 */ {"var154", "undefined"}, - /* 155 */ {"GFLUX", "Ground Heat Flux [W/m^2]"}, - /* 156 */ {"CIN", "Convective inhibition [J/kg]"}, - /* 157 */ {"CAPE", "Convective available potential energy [J/kg]"}, - /* 158 */ {"TKE", "Turbulent Kinetic Energy [J/kg]"}, - /* 159 */ {"MXSALB", "Maximum snow albedo [%]"}, - /* 160 */ {"SOILL", "Liquid volumetric soil moisture (non-frozen) [fraction]"}, - /* 161 */ {"ASNOW", "Frozen precipitation (e.g. snowfall) [kg/m^2]"}, - /* 162 */ {"ARAIN", "Liquid precipitation (rainfall) [kg/m^2]"}, - /* 163 */ {"GWREC", "Groundwater recharge [kg/m^2]"}, - /* 164 */ {"QREC", "Flood plain recharge [kg/m^2]"}, - /* 165 */ {"SNOWT", "Snow temperature, depth-avg [K]"}, - /* 166 */ {"VBDSF", "Visible beam downward solar flux [W/m^2]"}, - /* 167 */ {"VDDSF", "Visible diffuse downward solar flux [W/m^2]"}, - /* 168 */ {"NBDSF", "Near IR beam downward solar flux [W/m^2]"}, - /* 169 */ {"NDDSF", "Near IR diffuse downward solar flux [W/m^2]"}, - /* 170 */ {"SNFALB", "Snow-free albedo [%]"}, - /* 171 */ {"RLYRS", "Number of soil layers in root zone [non-dim]"}, - /* 172 */ {"FLX", "Momentum flux N/m2 [M]"}, - /* 173 */ {"LMH", "Mass point model surface [non-dim]"}, - /* 174 */ {"LMV", "Velocity point model surface [non-dim]"}, - /* 175 */ {"MLYNO", "Model layer number (from bottom up) [non-dim]"}, - /* 176 */ {"NLAT", "Latitude (-90 to +90) [deg]"}, - /* 177 */ {"ELON", "East longitude (0-360) [deg]"}, - /* 178 */ {"ICMR", "Ice mixing ratio [kg/kg]"}, - /* 179 */ {"ACOND", "Aerodynamic conductance [m/s]"}, - /* 180 */ {"SNOAG", "Snow age [s]"}, - /* 181 */ {"CCOND", "Canopy conductance [m/s]"}, - /* 182 */ {"LAI", "Leaf area index (0-9) [non-dim]"}, - /* 183 */ {"SFCRH", "Roughness length for heat [m]"}, - /* 184 */ {"SALBD", "Snow albedo (over snow cover area only) [%]"}, - /* 185 */ {"var185", "undefined"}, - /* 186 */ {"var186", "undefined"}, - /* 187 */ {"NDVI", "Normalized Difference Vegetation Index []"}, - /* 188 */ {"DRIP", "Rate of water dropping from canopy to gnd [kg/m^2]"}, - /* 189 */ {"LANDN", "Land-sea coverage (nearest neighbor) [land=1,sea=0]"}, - /* 190 */ {"HLCY", "Storm relative helicity [m^2/s^2]"}, - /* 191 */ {"NLATN", "Latitude (nearest neigbhbor) (-90 to +90) [deg]"}, - /* 192 */ {"ELONN", "East longitude (nearest neigbhbor) (0-360) [deg]"}, - /* 193 */ {"APTMP", "Apparent temperature [K]"}, - /* 194 */ {"CPOFP", "Prob. of frozen precipitation [%]"}, - /* 195 */ {"var195", "undefined"}, - /* 196 */ {"USTM", "u-component of storm motion [m/s]"}, - /* 197 */ {"VSTM", "v-component of storm motion [m/s]"}, - /* 198 */ {"SBSNO", "Sublimation (evaporation from snow) [W/m^2]"}, - /* 199 */ {"EVBS", "Direct evaporation from bare soil [W/m^2]"}, - /* 200 */ {"EVCW", "Canopy water evaporation [W/m^2]"}, - /* 201 */ {"var201", "undefined"}, - /* 202 */ {"APCPN", "Total precipitation (nearest grid point) [kg/m^2]"}, - /* 203 */ {"RSMIN", "Minimal stomatal resistance [s/m]"}, - /* 204 */ {"DSWRF", "Downward shortwave radiation flux [W/m^2]"}, - /* 205 */ {"DLWRF", "Downward longwave radiation flux [W/m^2]"}, - /* 206 */ {"ACPCPN", "Convective precipitation (nearest grid point) [kg/m^2]"}, - /* 207 */ {"MSTAV", "Moisture availability [%]"}, - /* 208 */ {"SFEXC", "Exchange coefficient [(kg/m^3)(m/s)]"}, - /* 209 */ {"var209", "undefined"}, - /* 210 */ {"TRANS", "Transpiration [W/m^2]"}, - /* 211 */ {"USWRF", "Upward short wave radiation flux [W/m^2]"}, - /* 212 */ {"ULWRF", "Upward long wave radiation flux [W/m^2]"}, - /* 213 */ {"CDLYR", "Non-convective cloud [%]"}, - /* 214 */ {"CPRAT", "Convective precip. rate [kg/m^2/s]"}, - /* 215 */ {"var215", "undefined"}, - /* 216 */ {"TTRAD", "Temp. tendency by all radiation [K/s]"}, - /* 217 */ {"var217", "undefined"}, - /* 218 */ {"HGTN", "Geopotential Height (nearest grid point) [gpm]"}, - /* 219 */ {"WILT", "Wilting point [fraction]"}, - /* 220 */ {"FLDCP", "Field Capacity [fraction]"}, - /* 221 */ {"HPBL", "Planetary boundary layer height [m]"}, - /* 222 */ {"SLTYP", "Surface slope type [Index]"}, - /* 223 */ {"CNWAT", "Plant canopy surface water [kg/m^2]"}, - /* 224 */ {"SOTYP", "Soil type [Index]"}, - /* 225 */ {"VGTYP", "Vegetation type [Index]"}, - /* 226 */ {"BMIXL", "Blackadars mixing length scale [m]"}, - /* 227 */ {"AMIXL", "Asymptotic mixing length scale [m]"}, - /* 228 */ {"PEVAP", "Potential evaporation [kg/m^2]"}, - /* 229 */ {"SNOHF", "Snow phase-change heat flux [W/m^2]"}, - /* 230 */ {"SMREF", "Transpiration stress-onset (soil moisture) [fraction]"}, - /* 231 */ {"SMDRY", "Direct evaporation cease (soil moisture) [fraction]"}, - /* 232 */ {"WVINC", "water vapor added by precip assimilation [kg/m^2]"}, - /* 233 */ {"WCINC", "water condensate added by precip assimilaition [kg/m^2]"}, - /* 234 */ {"BGRUN", "Subsurface runoff (baseflow) [kg/m^2]"}, - /* 235 */ {"SSRUN", "Surface runoff (non-infiltrating) [kg/m^2]"}, - /* 236 */ {"var236", "undefined"}, - /* 237 */ {"WVCONV", "Water vapor flux convergence (vertical int) [kg/m^2]"}, - /* 238 */ {"SNOWC", "Snow cover [%]"}, - /* 239 */ {"SNOT", "Snow temperature [K]"}, - /* 240 */ {"POROS", "Soil porosity [fraction]"}, - /* 241 */ {"WCCONV", "Water condensate flux convergence (vertical int) [kg/m^2]"}, - /* 242 */ {"WVUFLX", "Water vapor zonal flux (vertical int)[kg/m]"}, - /* 243 */ {"WVVFLX", "Water vapor meridional flux (vertical int) [kg/m]"}, - /* 244 */ {"WCUFLX", "Water condensate zonal flux (vertical int) [kg/m]"}, - /* 245 */ {"WCVFLX", "Water condensate meridional flux (vertical int) [kg/m]"}, - /* 246 */ {"RCS", "Solar parameter in canopy conductance [fraction]"}, - /* 247 */ {"RCT", "Temperature parameter in canopy conductance [fraction]"}, - /* 248 */ {"RCQ", "Humidity parameter in canopy conductance [fraction]"}, - /* 249 */ {"RCSOL", "Soil moisture parameter in canopy conductance [fraction]"}, - /* 250 */ {"SWHR", "Solar radiative heating [K/s]"}, - /* 251 */ {"LWHR", "Longwave radiative heating [K/s]"}, - /* 252 */ {"CD", "Surface drag coefficient [non-dim]"}, - /* 253 */ {"FRICV", "Surface friction velocity [m/s]"}, - /* 254 */ {"RI", "Richardson number [non-dim]"}, - /* 255 */ {"var255", "undefined"}, + /* 0 */ {"var0", "undefined"}, + /* 1 */ {"PRES", "Pressure [Pa]"}, + /* 2 */ {"PRMSL", "Pressure reduced to MSL [Pa]"}, + /* 3 */ {"PTEND", "Pressure tendency [Pa/s]"}, + /* 4 */ {"PVORT", "Pot. vorticity [km^2/kg/s]"}, + /* 5 */ {"ICAHT", "ICAO Standard Atmosphere Reference Height [M]"}, + /* 6 */ {"GP", "Geopotential [m^2/s^2]"}, + /* 7 */ {"HGT", "Geopotential height [gpm]"}, + /* 8 */ {"DIST", "Geometric height [m]"}, + /* 9 */ {"HSTDV", "Std dev of height [m]"}, + /* 10 */ {"TOZNE", "Total ozone [Dobson]"}, + /* 11 */ {"TMP", "Temp. [K]"}, + /* 12 */ {"VTMP", "Virtual temp. [K]"}, + /* 13 */ {"POT", "Potential temp. [K]"}, + /* 14 */ {"EPOT", "Pseudo-adiabatic pot. temp. [K]"}, + /* 15 */ {"TMAX", "Max. temp. [K]"}, + /* 16 */ {"TMIN", "Min. temp. [K]"}, + /* 17 */ {"DPT", "Dew point temp. [K]"}, + /* 18 */ {"DEPR", "Dew point depression [K]"}, + /* 19 */ {"LAPR", "Lapse rate [K/m]"}, + /* 20 */ {"VIS", "Visibility [m]"}, + /* 21 */ {"RDSP1", "Radar spectra (1) [non-dim]"}, + /* 22 */ {"RDSP2", "Radar spectra (2) [non-dim]"}, + /* 23 */ {"RDSP3", "Radar spectra (3) [non-dim]"}, + /* 24 */ {"PLI", "Parcel lifted index (to 500 hPa) [K]"}, + /* 25 */ {"TMPA", "Temp. anomaly [K]"}, + /* 26 */ {"PRESA", "Pressure anomaly [Pa]"}, + /* 27 */ {"GPA", "Geopotential height anomaly [gpm]"}, + /* 28 */ {"WVSP1", "Wave spectra (1) [non-dim]"}, + /* 29 */ {"WVSP2", "Wave spectra (2) [non-dim]"}, + /* 30 */ {"WVSP3", "Wave spectra (3) [non-dim]"}, + /* 31 */ {"WDIR", "Wind direction [deg]"}, + /* 32 */ {"WIND", "Wind speed [m/s]"}, + /* 33 */ {"UGRD", "u wind [m/s]"}, + /* 34 */ {"VGRD", "v wind [m/s]"}, + /* 35 */ {"STRM", "Stream function [m^2/s]"}, + /* 36 */ {"VPOT", "Velocity potential [m^2/s]"}, + /* 37 */ {"MNTSF", "Montgomery stream function [m^2/s^2]"}, + /* 38 */ {"SGCVV", "Sigma coord. vertical velocity [/s]"}, + /* 39 */ {"VVEL", "Pressure vertical velocity [Pa/s]"}, + /* 40 */ {"DZDT", "Geometric vertical velocity [m/s]"}, + /* 41 */ {"ABSV", "Absolute vorticity [/s]"}, + /* 42 */ {"ABSD", "Absolute divergence [/s]"}, + /* 43 */ {"RELV", "Relative vorticity [/s]"}, + /* 44 */ {"RELD", "Relative divergence [/s]"}, + /* 45 */ {"VUCSH", "Vertical u shear [/s]"}, + /* 46 */ {"VVCSH", "Vertical v shear [/s]"}, + /* 47 */ {"DIRC", "Direction of current [deg]"}, + /* 48 */ {"SPC", "Speed of current [m/s]"}, + /* 49 */ {"UOGRD", "u of current [m/s]"}, + /* 50 */ {"VOGRD", "v of current [m/s]"}, + /* 51 */ {"SPFH", "Specific humidity [kg/kg]"}, + /* 52 */ {"RH", "Relative humidity [%]"}, + /* 53 */ {"MIXR", "Humidity mixing ratio [kg/kg]"}, + /* 54 */ {"PWAT", "Precipitable water [kg/m^2]"}, + /* 55 */ {"VAPP", "Vapor pressure [Pa]"}, + /* 56 */ {"SATD", "Saturation deficit [Pa]"}, + /* 57 */ {"EVP", "Evaporation [kg/m^2]"}, + /* 58 */ {"CICE", "Cloud Ice [kg/m^2]"}, + /* 59 */ {"PRATE", "Precipitation rate [kg/m^2/s]"}, + /* 60 */ {"TSTM", "Thunderstorm probability [%]"}, + /* 61 */ {"APCP", "Total precipitation [kg/m^2]"}, + /* 62 */ {"NCPCP", "Large scale precipitation [kg/m^2]"}, + /* 63 */ {"ACPCP", "Convective precipitation [kg/m^2]"}, + /* 64 */ {"SRWEQ", "Snowfall rate water equiv. [kg/m^2/s]"}, + /* 65 */ {"WEASD", "Accum. snow [kg/m^2]"}, + /* 66 */ {"SNOD", "Snow depth [m]"}, + /* 67 */ {"MIXHT", "Mixed layer depth [m]"}, + /* 68 */ {"TTHDP", "Transient thermocline depth [m]"}, + /* 69 */ {"MTHD", "Main thermocline depth [m]"}, + /* 70 */ {"MTHA", "Main thermocline anomaly [m]"}, + /* 71 */ {"TCDC", "Total cloud cover [%]"}, + /* 72 */ {"CDCON", "Convective cloud cover [%]"}, + /* 73 */ {"LCDC", "Low level cloud cover [%]"}, + /* 74 */ {"MCDC", "Mid level cloud cover [%]"}, + /* 75 */ {"HCDC", "High level cloud cover [%]"}, + /* 76 */ {"CWAT", "Cloud water [kg/m^2]"}, + /* 77 */ {"BLI", "Best lifted index (to 500 hPa) [K]"}, + /* 78 */ {"SNOC", "Convective snow [kg/m^2]"}, + /* 79 */ {"SNOL", "Large scale snow [kg/m^2]"}, + /* 80 */ {"WTMP", "Water temp. [K]"}, + /* 81 */ {"LAND", "Land-sea coverage (land=1;sea=0) [fraction]"}, + /* 82 */ {"DSLM", "Deviation of sea level from mean [m]"}, + /* 83 */ {"SFCR", "Surface roughness [m]"}, + /* 84 */ {"ALBDO", "Albedo [%]"}, + /* 85 */ {"TSOIL", "Soil temp. [K]"}, + /* 86 */ {"SOILM", "Soil moisture content [kg/m^2]"}, + /* 87 */ {"VEG", "Vegetation [%]"}, + /* 88 */ {"SALTY", "Salinity [kg/kg]"}, + /* 89 */ {"DEN", "Density [kg/m^3]"}, + /* 90 */ {"WATR", "Water runoff [kg/m^2]"}, + /* 91 */ {"ICEC", "Ice concentration (ice=1;no ice=0) [fraction]"}, + /* 92 */ {"ICETK", "Ice thickness [m]"}, + /* 93 */ {"DICED", "Direction of ice drift [deg]"}, + /* 94 */ {"SICED", "Speed of ice drift [m/s]"}, + /* 95 */ {"UICE", "u of ice drift [m/s]"}, + /* 96 */ {"VICE", "v of ice drift [m/s]"}, + /* 97 */ {"ICEG", "Ice growth rate [m/s]"}, + /* 98 */ {"ICED", "Ice divergence [/s]"}, + /* 99 */ {"SNOM", "Snow melt [kg/m^2]"}, + /* 100 */ {"HTSGW", "Sig height of wind waves and swell [m]"}, + /* 101 */ {"WVDIR", "Direction of wind waves [deg]"}, + /* 102 */ {"WVHGT", "Sig height of wind waves [m]"}, + /* 103 */ {"WVPER", "Mean period of wind waves [s]"}, + /* 104 */ {"SWDIR", "Direction of swell waves [deg]"}, + /* 105 */ {"SWELL", "Sig height of swell waves [m]"}, + /* 106 */ {"SWPER", "Mean period of swell waves [s]"}, + /* 107 */ {"DIRPW", "Primary wave direction [deg]"}, + /* 108 */ {"PERPW", "Primary wave mean period [s]"}, + /* 109 */ {"DIRSW", "Secondary wave direction [deg]"}, + /* 110 */ {"PERSW", "Secondary wave mean period [s]"}, + /* 111 */ {"NSWRS", "Net short wave (surface) [W/m^2]"}, + /* 112 */ {"NLWRS", "Net long wave (surface) [W/m^2]"}, + /* 113 */ {"NSWRT", "Net short wave (top) [W/m^2]"}, + /* 114 */ {"NLWRT", "Net long wave (top) [W/m^2]"}, + /* 115 */ {"LWAVR", "Long wave [W/m^2]"}, + /* 116 */ {"SWAVR", "Short wave [W/m^2]"}, + /* 117 */ {"GRAD", "Global radiation [W/m^2]"}, + /* 118 */ {"BRTMP", "Brightness temperature [K]"}, + /* 119 */ {"LWRAD", "Radiance with respect to wave no. [W/m/sr]"}, + /* 120 */ {"SWRAD", "Radiance with respect ot wave len. [W/m^3/sr]"}, + /* 121 */ {"LHTFL", "Latent heat flux [W/m^2]"}, + /* 122 */ {"SHTFL", "Sensible heat flux [W/m^2]"}, + /* 123 */ {"BLYDP", "Boundary layer dissipation [W/m^2]"}, + /* 124 */ {"UFLX", "Zonal momentum flux [N/m^2]"}, + /* 125 */ {"VFLX", "Meridional momentum flux [N/m^2]"}, + /* 126 */ {"WMIXE", "Wind mixing energy [J]"}, + /* 127 */ {"IMGD", "Image data []"}, + /* 128 */ {"MSLSA", "Mean sea level pressure (Std Atm) [Pa]"}, + /* 129 */ {"var129", "undefined"}, + /* 130 */ {"MSLET", "Mean sea level pressure (ETA model) [Pa]"}, + /* 131 */ {"LFTX", "Surface lifted index [K]"}, + /* 132 */ {"4LFTX", "Best (4-layer) lifted index [K]"}, + /* 133 */ {"var133", "undefined"}, + /* 134 */ {"PRESN", "Pressure (nearest grid point) [Pa]"}, + /* 135 */ {"MCONV", "Horizontal moisture divergence [kg/kg/s]"}, + /* 136 */ {"VWSH", "Vertical speed shear [1/s]"}, + /* 137 */ {"LTNGSD", "Lightning strike density [1/m^2/s]"}, + /* 138 */ {"var138", "undefined"}, + /* 139 */ {"PVMW", "Potential vorticity (mass-weighted) [1/s/m]"}, + /* 140 */ {"CRAIN", "Categorical rain [yes=1;no=0]"}, + /* 141 */ {"CFRZR", "Categorical freezing rain [yes=1;no=0]"}, + /* 142 */ {"CICEP", "Categorical ice pellets [yes=1;no=0]"}, + /* 143 */ {"CSNOW", "Categorical snow [yes=1;no=0]"}, + /* 144 */ {"SOILW", "Volumetric soil moisture (frozen + liquid) [fraction]"}, + /* 145 */ {"PEVPR", "Potential evaporation rate [W/m^2]"}, + /* 146 */ {"VEGT", "Vegetation canopy temperature [K]"}, + /* 147 */ {"BARET", "Bare soil surface skin temperature [K]"}, + /* 148 */ {"AVSFT", "Average surface skin temperature [K]"}, + /* 149 */ {"RADT", "Effective radiative skin temperature [K]"}, + /* 150 */ {"SSTOR", "Surface water storage [kg/m^2]"}, + /* 151 */ {"LSOIL", "Liquid soil moisture content (non-frozen) [kg/m^2]"}, + /* 152 */ {"EWATR", "Open water evaporation (standing water) [W/m^2]"}, + /* 153 */ {"CLWMR", "Cloud water [kg/kg]"}, + /* 154 */ {"var154", "undefined"}, + /* 155 */ {"GFLUX", "Ground Heat Flux [W/m^2]"}, + /* 156 */ {"CIN", "Convective inhibition [J/kg]"}, + /* 157 */ {"CAPE", "Convective available potential energy [J/kg]"}, + /* 158 */ {"TKE", "Turbulent Kinetic Energy [J/kg]"}, + /* 159 */ {"MXSALB", "Maximum snow albedo [%]"}, + /* 160 */ {"SOILL", "Liquid volumetric soil moisture (non-frozen) [fraction]"}, + /* 161 */ {"ASNOW", "Frozen precipitation (e.g. snowfall) [kg/m^2]"}, + /* 162 */ {"ARAIN", "Liquid precipitation (rainfall) [kg/m^2]"}, + /* 163 */ {"GWREC", "Groundwater recharge [kg/m^2]"}, + /* 164 */ {"QREC", "Flood plain recharge [kg/m^2]"}, + /* 165 */ {"SNOWT", "Snow temperature, depth-avg [K]"}, + /* 166 */ {"VBDSF", "Visible beam downward solar flux [W/m^2]"}, + /* 167 */ {"VDDSF", "Visible diffuse downward solar flux [W/m^2]"}, + /* 168 */ {"NBDSF", "Near IR beam downward solar flux [W/m^2]"}, + /* 169 */ {"NDDSF", "Near IR diffuse downward solar flux [W/m^2]"}, + /* 170 */ {"SNFALB", "Snow-free albedo [%]"}, + /* 171 */ {"RLYRS", "Number of soil layers in root zone [non-dim]"}, + /* 172 */ {"FLX", "Momentum flux N/m2 [M]"}, + /* 173 */ {"LMH", "Mass point model surface [non-dim]"}, + /* 174 */ {"LMV", "Velocity point model surface [non-dim]"}, + /* 175 */ {"MLYNO", "Model layer number (from bottom up) [non-dim]"}, + /* 176 */ {"NLAT", "Latitude (-90 to +90) [deg]"}, + /* 177 */ {"ELON", "East longitude (0-360) [deg]"}, + /* 178 */ {"ICMR", "Ice mixing ratio [kg/kg]"}, + /* 179 */ {"ACOND", "Aerodynamic conductance [m/s]"}, + /* 180 */ {"SNOAG", "Snow age [s]"}, + /* 181 */ {"CCOND", "Canopy conductance [m/s]"}, + /* 182 */ {"LAI", "Leaf area index (0-9) [non-dim]"}, + /* 183 */ {"SFCRH", "Roughness length for heat [m]"}, + /* 184 */ {"SALBD", "Snow albedo (over snow cover area only) [%]"}, + /* 185 */ {"var185", "undefined"}, + /* 186 */ {"var186", "undefined"}, + /* 187 */ {"NDVI", "Normalized Difference Vegetation Index []"}, + /* 188 */ {"DRIP", "Rate of water dropping from canopy to gnd [kg/m^2]"}, + /* 189 */ {"LANDN", "Land-sea coverage (nearest neighbor) [land=1,sea=0]"}, + /* 190 */ {"HLCY", "Storm relative helicity [m^2/s^2]"}, + /* 191 */ {"NLATN", "Latitude (nearest neigbhbor) (-90 to +90) [deg]"}, + /* 192 */ {"ELONN", "East longitude (nearest neigbhbor) (0-360) [deg]"}, + /* 193 */ {"APTMP", "Apparent temperature [K]"}, + /* 194 */ {"CPOFP", "Prob. of frozen precipitation [%]"}, + /* 195 */ {"var195", "undefined"}, + /* 196 */ {"USTM", "u-component of storm motion [m/s]"}, + /* 197 */ {"VSTM", "v-component of storm motion [m/s]"}, + /* 198 */ {"SBSNO", "Sublimation (evaporation from snow) [W/m^2]"}, + /* 199 */ {"EVBS", "Direct evaporation from bare soil [W/m^2]"}, + /* 200 */ {"EVCW", "Canopy water evaporation [W/m^2]"}, + /* 201 */ {"var201", "undefined"}, + /* 202 */ {"APCPN", "Total precipitation (nearest grid point) [kg/m^2]"}, + /* 203 */ {"RSMIN", "Minimal stomatal resistance [s/m]"}, + /* 204 */ {"DSWRF", "Downward shortwave radiation flux [W/m^2]"}, + /* 205 */ {"DLWRF", "Downward longwave radiation flux [W/m^2]"}, + /* 206 */ {"ACPCPN", "Convective precipitation (nearest grid point) [kg/m^2]"}, + /* 207 */ {"MSTAV", "Moisture availability [%]"}, + /* 208 */ {"SFEXC", "Exchange coefficient [(kg/m^3)(m/s)]"}, + /* 209 */ {"var209", "undefined"}, + /* 210 */ {"TRANS", "Transpiration [W/m^2]"}, + /* 211 */ {"USWRF", "Upward short wave radiation flux [W/m^2]"}, + /* 212 */ {"ULWRF", "Upward long wave radiation flux [W/m^2]"}, + /* 213 */ {"CDLYR", "Non-convective cloud [%]"}, + /* 214 */ {"CPRAT", "Convective precip. rate [kg/m^2/s]"}, + /* 215 */ {"var215", "undefined"}, + /* 216 */ {"TTRAD", "Temp. tendency by all radiation [K/s]"}, + /* 217 */ {"var217", "undefined"}, + /* 218 */ {"HGTN", "Geopotential Height (nearest grid point) [gpm]"}, + /* 219 */ {"WILT", "Wilting point [fraction]"}, + /* 220 */ {"FLDCP", "Field Capacity [fraction]"}, + /* 221 */ {"HPBL", "Planetary boundary layer height [m]"}, + /* 222 */ {"SLTYP", "Surface slope type [Index]"}, + /* 223 */ {"CNWAT", "Plant canopy surface water [kg/m^2]"}, + /* 224 */ {"SOTYP", "Soil type [Index]"}, + /* 225 */ {"VGTYP", "Vegetation type [Index]"}, + /* 226 */ {"BMIXL", "Blackadars mixing length scale [m]"}, + /* 227 */ {"AMIXL", "Asymptotic mixing length scale [m]"}, + /* 228 */ {"PEVAP", "Potential evaporation [kg/m^2]"}, + /* 229 */ {"SNOHF", "Snow phase-change heat flux [W/m^2]"}, + /* 230 */ {"SMREF", "Transpiration stress-onset (soil moisture) [fraction]"}, + /* 231 */ {"SMDRY", "Direct evaporation cease (soil moisture) [fraction]"}, + /* 232 */ {"WVINC", "water vapor added by precip assimilation [kg/m^2]"}, + /* 233 */ {"WCINC", "water condensate added by precip assimilaition [kg/m^2]"}, + /* 234 */ {"BGRUN", "Subsurface runoff (baseflow) [kg/m^2]"}, + /* 235 */ {"SSRUN", "Surface runoff (non-infiltrating) [kg/m^2]"}, + /* 236 */ {"var236", "undefined"}, + /* 237 */ {"WVCONV", "Water vapor flux convergence (vertical int) [kg/m^2]"}, + /* 238 */ {"SNOWC", "Snow cover [%]"}, + /* 239 */ {"SNOT", "Snow temperature [K]"}, + /* 240 */ {"POROS", "Soil porosity [fraction]"}, + /* 241 */ {"WCCONV", "Water condensate flux convergence (vertical int) [kg/m^2]"}, + /* 242 */ {"WVUFLX", "Water vapor zonal flux (vertical int)[kg/m]"}, + /* 243 */ {"WVVFLX", "Water vapor meridional flux (vertical int) [kg/m]"}, + /* 244 */ {"WCUFLX", "Water condensate zonal flux (vertical int) [kg/m]"}, + /* 245 */ {"WCVFLX", "Water condensate meridional flux (vertical int) [kg/m]"}, + /* 246 */ {"RCS", "Solar parameter in canopy conductance [fraction]"}, + /* 247 */ {"RCT", "Temperature parameter in canopy conductance [fraction]"}, + /* 248 */ {"RCQ", "Humidity parameter in canopy conductance [fraction]"}, + /* 249 */ {"RCSOL", "Soil moisture parameter in canopy conductance [fraction]"}, + /* 250 */ {"SWHR", "Solar radiative heating [K/s]"}, + /* 251 */ {"LWHR", "Longwave radiative heating [K/s]"}, + /* 252 */ {"CD", "Surface drag coefficient [non-dim]"}, + /* 253 */ {"FRICV", "Surface friction velocity [m/s]"}, + /* 254 */ {"RI", "Richardson number [non-dim]"}, + /* 255 */ {"var255", "undefined"}, }; const struct ParmTable parm_table_nceptab_130[256] = { - /* 0 */ {"var0", "undefined"}, - /* 1 */ {"PRES", "Pressure [Pa]"}, - /* 2 */ {"PRMSL", "Pressure reduced to MSL [Pa]"}, - /* 3 */ {"PTEND", "Pressure tendency [Pa/s]"}, - /* 4 */ {"PVORT", "Pot. vorticity [km^2/kg/s]"}, - /* 5 */ {"ICAHT", "ICAO Standard Atmosphere Reference Height [M]"}, - /* 6 */ {"GP", "Geopotential [m^2/s^2]"}, - /* 7 */ {"HGT", "Geopotential height [gpm]"}, - /* 8 */ {"DIST", "Geometric height [m]"}, - /* 9 */ {"HSTDV", "Std dev of height [m]"}, - /* 10 */ {"TOZNE", "Total ozone [Dobson]"}, - /* 11 */ {"TMP", "Temp. [K]"}, - /* 12 */ {"VTMP", "Virtual temp. [K]"}, - /* 13 */ {"POT", "Potential temp. [K]"}, - /* 14 */ {"EPOT", "Pseudo-adiabatic pot. temp. [K]"}, - /* 15 */ {"TMAX", "Max. temp. [K]"}, - /* 16 */ {"TMIN", "Min. temp. [K]"}, - /* 17 */ {"DPT", "Dew point temp. [K]"}, - /* 18 */ {"DEPR", "Dew point depression [K]"}, - /* 19 */ {"LAPR", "Lapse rate [K/m]"}, - /* 20 */ {"VIS", "Visibility [m]"}, - /* 21 */ {"RDSP1", "Radar spectra (1) [non-dim]"}, - /* 22 */ {"RDSP2", "Radar spectra (2) [non-dim]"}, - /* 23 */ {"RDSP3", "Radar spectra (3) [non-dim]"}, - /* 24 */ {"PLI", "Parcel lifted index (to 500 hPa) [K]"}, - /* 25 */ {"TMPA", "Temp. anomaly [K]"}, - /* 26 */ {"PRESA", "Pressure anomaly [Pa]"}, - /* 27 */ {"GPA", "Geopotential height anomaly [gpm]"}, - /* 28 */ {"WVSP1", "Wave spectra (1) [non-dim]"}, - /* 29 */ {"WVSP2", "Wave spectra (2) [non-dim]"}, - /* 30 */ {"WVSP3", "Wave spectra (3) [non-dim]"}, - /* 31 */ {"WDIR", "Wind direction [deg]"}, - /* 32 */ {"WIND", "Wind speed [m/s]"}, - /* 33 */ {"UGRD", "u wind [m/s]"}, - /* 34 */ {"VGRD", "v wind [m/s]"}, - /* 35 */ {"STRM", "Stream function [m^2/s]"}, - /* 36 */ {"VPOT", "Velocity potential [m^2/s]"}, - /* 37 */ {"MNTSF", "Montgomery stream function [m^2/s^2]"}, - /* 38 */ {"SGCVV", "Sigma coord. vertical velocity [/s]"}, - /* 39 */ {"VVEL", "Pressure vertical velocity [Pa/s]"}, - /* 40 */ {"DZDT", "Geometric vertical velocity [m/s]"}, - /* 41 */ {"ABSV", "Absolute vorticity [/s]"}, - /* 42 */ {"ABSD", "Absolute divergence [/s]"}, - /* 43 */ {"RELV", "Relative vorticity [/s]"}, - /* 44 */ {"RELD", "Relative divergence [/s]"}, - /* 45 */ {"VUCSH", "Vertical u shear [/s]"}, - /* 46 */ {"VVCSH", "Vertical v shear [/s]"}, - /* 47 */ {"DIRC", "Direction of current [deg]"}, - /* 48 */ {"SPC", "Speed of current [m/s]"}, - /* 49 */ {"UOGRD", "u of current [m/s]"}, - /* 50 */ {"VOGRD", "v of current [m/s]"}, - /* 51 */ {"SPFH", "Specific humidity [kg/kg]"}, - /* 52 */ {"RH", "Relative humidity [%]"}, - /* 53 */ {"MIXR", "Humidity mixing ratio [kg/kg]"}, - /* 54 */ {"PWAT", "Precipitable water [kg/m^2]"}, - /* 55 */ {"VAPP", "Vapor pressure [Pa]"}, - /* 56 */ {"SATD", "Saturation deficit [Pa]"}, - /* 57 */ {"EVP", "Evaporation [kg/m^2]"}, - /* 58 */ {"CICE", "Cloud Ice [kg/m^2]"}, - /* 59 */ {"PRATE", "Precipitation rate [kg/m^2/s]"}, - /* 60 */ {"TSTM", "Thunderstorm probability [%]"}, - /* 61 */ {"APCP", "Total precipitation [kg/m^2]"}, - /* 62 */ {"NCPCP", "Large scale precipitation [kg/m^2]"}, - /* 63 */ {"ACPCP", "Convective precipitation [kg/m^2]"}, - /* 64 */ {"SRWEQ", "Snowfall rate water equiv. [kg/m^2/s]"}, - /* 65 */ {"WEASD", "Accum. snow [kg/m^2]"}, - /* 66 */ {"SNOD", "Snow depth [m]"}, - /* 67 */ {"MIXHT", "Mixed layer depth [m]"}, - /* 68 */ {"TTHDP", "Transient thermocline depth [m]"}, - /* 69 */ {"MTHD", "Main thermocline depth [m]"}, - /* 70 */ {"MTHA", "Main thermocline anomaly [m]"}, - /* 71 */ {"TCDC", "Total cloud cover [%]"}, - /* 72 */ {"CDCON", "Convective cloud cover [%]"}, - /* 73 */ {"LCDC", "Low level cloud cover [%]"}, - /* 74 */ {"MCDC", "Mid level cloud cover [%]"}, - /* 75 */ {"HCDC", "High level cloud cover [%]"}, - /* 76 */ {"CWAT", "Cloud water [kg/m^2]"}, - /* 77 */ {"BLI", "Best lifted index (to 500 hPa) [K]"}, - /* 78 */ {"SNOC", "Convective snow [kg/m^2]"}, - /* 79 */ {"SNOL", "Large scale snow [kg/m^2]"}, - /* 80 */ {"WTMP", "Water temp. [K]"}, - /* 81 */ {"LAND", "Land cover (land=1;sea=0) [fraction]"}, - /* 82 */ {"DSLM", "Deviation of sea level from mean [m]"}, - /* 83 */ {"SFCR", "Surface roughness [m]"}, - /* 84 */ {"ALBDO", "Albedo [%]"}, - /* 85 */ {"TSOIL", "Soil temp. [K]"}, - /* 86 */ {"SOILM", "Soil moisture content [kg/m^2]"}, - /* 87 */ {"VEG", "Vegetation [%]"}, - /* 88 */ {"SALTY", "Salinity [kg/kg]"}, - /* 89 */ {"DEN", "Density [kg/m^3]"}, - /* 90 */ {"WATR", "Water runoff [kg/m^2]"}, - /* 91 */ {"ICEC", "Ice concentration (ice=1;no ice=0) [fraction]"}, - /* 92 */ {"ICETK", "Ice thickness [m]"}, - /* 93 */ {"DICED", "Direction of ice drift [deg]"}, - /* 94 */ {"SICED", "Speed of ice drift [m/s]"}, - /* 95 */ {"UICE", "u of ice drift [m/s]"}, - /* 96 */ {"VICE", "v of ice drift [m/s]"}, - /* 97 */ {"ICEG", "Ice growth rate [m/s]"}, - /* 98 */ {"ICED", "Ice divergence [/s]"}, - /* 99 */ {"SNOM", "Snow melt [kg/m^2]"}, - /* 100 */ {"HTSGW", "Sig height of wind waves and swell [m]"}, - /* 101 */ {"WVDIR", "Direction of wind waves [deg]"}, - /* 102 */ {"WVHGT", "Sig height of wind waves [m]"}, - /* 103 */ {"WVPER", "Mean period of wind waves [s]"}, - /* 104 */ {"SWDIR", "Direction of swell waves [deg]"}, - /* 105 */ {"SWELL", "Sig height of swell waves [m]"}, - /* 106 */ {"SWPER", "Mean period of swell waves [s]"}, - /* 107 */ {"DIRPW", "Primary wave direction [deg]"}, - /* 108 */ {"PERPW", "Primary wave mean period [s]"}, - /* 109 */ {"DIRSW", "Secondary wave direction [deg]"}, - /* 110 */ {"PERSW", "Secondary wave mean period [s]"}, - /* 111 */ {"NSWRS", "Net short wave (surface) [W/m^2]"}, - /* 112 */ {"NLWRS", "Net long wave (surface) [W/m^2]"}, - /* 113 */ {"NSWRT", "Net short wave (top) [W/m^2]"}, - /* 114 */ {"NLWRT", "Net long wave (top) [W/m^2]"}, - /* 115 */ {"LWAVR", "Long wave [W/m^2]"}, - /* 116 */ {"SWAVR", "Short wave [W/m^2]"}, - /* 117 */ {"GRAD", "Global radiation [W/m^2]"}, - /* 118 */ {"BRTMP", "Brightness temperature [K]"}, - /* 119 */ {"LWRAD", "Radiance with respect to wave no. [W/m/sr]"}, - /* 120 */ {"SWRAD", "Radiance with respect ot wave len. [W/m^3/sr]"}, - /* 121 */ {"LHTFL", "Latent heat flux [W/m^2]"}, - /* 122 */ {"SHTFL", "Sensible heat flux [W/m^2]"}, - /* 123 */ {"BLYDP", "Boundary layer dissipation [W/m^2]"}, - /* 124 */ {"UFLX", "Zonal momentum flux [N/m^2]"}, - /* 125 */ {"VFLX", "Meridional momentum flux [N/m^2]"}, - /* 126 */ {"WMIXE", "Wind mixing energy [J]"}, - /* 127 */ {"IMGD", "Image data []"}, - /* 128 */ {"var128", "undefined"}, - /* 129 */ {"var129", "undefined"}, - /* 130 */ {"var130", "undefined"}, - /* 131 */ {"var131", "undefined"}, - /* 132 */ {"var132", "undefined"}, - /* 133 */ {"var133", "undefined"}, - /* 134 */ {"var134", "undefined"}, - /* 135 */ {"var135", "undefined"}, - /* 136 */ {"var136", "undefined"}, - /* 137 */ {"var137", "undefined"}, - /* 138 */ {"var138", "undefined"}, - /* 139 */ {"var139", "undefined"}, - /* 140 */ {"var140", "undefined"}, - /* 141 */ {"var141", "undefined"}, - /* 142 */ {"var142", "undefined"}, - /* 143 */ {"var143", "undefined"}, - /* 144 */ {"SOILW", "Volumetric soil moisture (frozen + liquid) [fraction]"}, - /* 145 */ {"PEVPR", "Potential evaporation rate [W/m^2]"}, - /* 146 */ {"VEGT", "Vegetation canopy temperature [K]"}, - /* 147 */ {"BARET", "Bare soil surface skin temperature [K]"}, - /* 148 */ {"AVSFT", "Average surface skin temperature [K]"}, - /* 149 */ {"RADT", "Effective radiative skin temperature [K]"}, - /* 150 */ {"SSTOR", "Surface water storage [Kg/m^2]"}, - /* 151 */ {"LSOIL", "Liquid soil moisture content (non-frozen) [Kg/m^2]"}, - /* 152 */ {"EWATR", "Open water evaporation (standing water) [W/m^2]"}, - /* 153 */ {"NCRAIN", "Number concentration for rain particles [-]"}, - /* 154 */ {"LSPA", "Land Surface Precipitation Accumulation [kg/m^2]"}, - /* 155 */ {"GFLUX", "Ground Heat Flux [W/m^2]"}, - /* 156 */ {"CIN", "Convective inhibition [J/Kg]"}, - /* 157 */ {"CAPE", "Convective available potential energy [J/Kg]"}, - /* 158 */ {"TKE", "Turbulent Kinetic Energy [J/Kg]"}, - /* 159 */ {"MXSALB", "Maximum snow albedo [%]"}, - /* 160 */ {"SOILL", "Liquid volumetric soil moisture (non-frozen) [fraction]"}, - /* 161 */ {"ASNOW", "Frozen precipitation (e.g. snowfall) [Kg/m^2]"}, - /* 162 */ {"ARAIN", "Liquid precipitation (rainfall) [Kg/m^2]"}, - /* 163 */ {"GWREC", "Groundwater recharge [Kg/m^2]"}, - /* 164 */ {"QREC", "Flood plain recharge [Kg/m^2]"}, - /* 165 */ {"SNOWT", "Snow temperature, depth-avg [K]"}, - /* 166 */ {"VBDSF", "Visible beam downward solar flux [W/m^2]"}, - /* 167 */ {"VDDSF", "Visible diffuse downward solar flux [W/m^2]"}, - /* 168 */ {"NBDSF", "Near IR beam downward solar flux [W/m^2]"}, - /* 169 */ {"NDDSF", "Near IR diffuse downward solar flux [W/m^2]"}, - /* 170 */ {"SNFALB", "Snow-free albedo [%]"}, - /* 171 */ {"RLYRS", "Number of soil layers in root zone [non-dim]"}, - /* 172 */ {"MFLX", "Momentum flux [N/m^2]"}, - /* 173 */ {"var173", "undefined"}, - /* 174 */ {"var174", "undefined"}, - /* 175 */ {"var175", "undefined"}, - /* 176 */ {"NLAT", "Latitude (-90 to +90) [deg]"}, - /* 177 */ {"ELON", "East longitude (0-360) [deg]"}, - /* 178 */ {"FLDCAP", "Field capacity [fraction]"}, - /* 179 */ {"ACOND", "Aerodynamic conductance [m/s]"}, - /* 180 */ {"SNOAG", "Snow age [s]"}, - /* 181 */ {"CCOND", "Canopy conductance [m/s]"}, - /* 182 */ {"LAI", "Leaf area index (0-9) [non-dim]"}, - /* 183 */ {"SFCRH", "Roughness length for heat [m]"}, - /* 184 */ {"SALBD", "Snow albedo (over snow cover area only) [%]"}, - /* 185 */ {"var185", "undefined"}, - /* 186 */ {"var186", "undefined"}, - /* 187 */ {"NDVI", "Normalized Difference Vegetation Index []"}, - /* 188 */ {"DRIP", "Canopy drip [Kg/m^2]"}, - /* 189 */ {"VBSALB", "Visible, black sky albedo [%]"}, - /* 190 */ {"VWSALB", "Visible, white sky albedo [%]"}, - /* 191 */ {"NBSALB", "Near IR, black sky albedo [%]"}, - /* 192 */ {"NWSALB", "Near IR, white sky albedo [%]"}, - /* 193 */ {"FRZR", "Freezing rain [kg/m^2]"}, - /* 194 */ {"FROZR", "Frozen rain [kg/m^2]"}, - /* 195 */ {"TSNOW", "Total snow [kg/m^2]"}, - /* 196 */ {"MTERH", "Model terrain height [m]"}, - /* 197 */ {"var197", "undefined"}, - /* 198 */ {"SBSNO", "Sublimation (evaporation from snow) [W/m^2]"}, - /* 199 */ {"EVBS", "Direct evaporation from bare soil [W/m^2]"}, - /* 200 */ {"EVCW", "Canopy water evaporation [W/m^2]"}, - /* 201 */ {"VTCIN", "Virtual temperature based convective inhibition [J/kg]"}, - /* 202 */ {"VTCAPE", "Virtual temperature based convective available pot. energy [J/Kg]"}, - /* 203 */ {"RSMIN", "Minimal stomatal resistance [s/m]"}, - /* 204 */ {"DSWRF", "Downward shortwave radiation flux [W/m^2]"}, - /* 205 */ {"DLWRF", "Downward longwave radiation flux [W/m^2]"}, - /* 206 */ {"VIL", "Vertically integrated liquid [Kg/m^2]"}, - /* 207 */ {"MSTAV", "Moisture availability [%]"}, - /* 208 */ {"SFEXC", "Exchange coefficient [(Kg/m^3)(m/s)]"}, - /* 209 */ {"var209", "undefined"}, - /* 210 */ {"TRANS", "Transpiration [W/m^2]"}, - /* 211 */ {"USWRF", "Upward short wave radiation flux [W/m^2]"}, - /* 212 */ {"ULWRF", "Upward long wave radiation flux [W/m^2]"}, - /* 213 */ {"var213", "undefined"}, - /* 214 */ {"var214", "undefined"}, - /* 215 */ {"var215", "undefined"}, - /* 216 */ {"var216", "undefined"}, - /* 217 */ {"var217", "undefined"}, - /* 218 */ {"var218", "undefined"}, - /* 219 */ {"WILT", "Wilting point [fraction]"}, - /* 220 */ {"FLDCP", "Field Capacity [fraction]"}, - /* 221 */ {"HPBL", "Planetary boundary layer height [m]"}, - /* 222 */ {"SLTYP", "Surface slope type [Index]"}, - /* 223 */ {"CNWAT", "Plant canopy surface water [Kg/m^2]"}, - /* 224 */ {"SOTYP", "Soil type [Index]"}, - /* 225 */ {"VGTYP", "Vegetation type [Index]"}, - /* 226 */ {"BMIXL", "Blackadars mixing length scale [m]"}, - /* 227 */ {"AMIXL", "Asymptotic mixing length scale [m]"}, - /* 228 */ {"PEVAP", "Potential evaporation [Kg/m^2]"}, - /* 229 */ {"SNOHF", "Snow phase-change heat flux [W/m^2]"}, - /* 230 */ {"SMREF", "Transpiration stress-onset (soil moisture) [fraction]"}, - /* 231 */ {"SMDRY", "Direct evaporation cease (soil moisture) [fraction]"}, - /* 232 */ {"var232", "undefined"}, - /* 233 */ {"var233", "undefined"}, - /* 234 */ {"BGRUN", "Subsurface runoff (baseflow) [Kg/m^2]"}, - /* 235 */ {"SSRUN", "Surface runoff (non-infiltrating) [Kg/m^2]"}, - /* 236 */ {"var236", "undefined"}, - /* 237 */ {"var237", "undefined"}, - /* 238 */ {"SNOWC", "Snow cover [%]"}, - /* 239 */ {"SNOT", "Snow temperature [K]"}, - /* 240 */ {"POROS", "Soil porosity [fraction]"}, - /* 241 */ {"SBT112", "Simulated brightness temp for GOES11, channel 2 [K]"}, - /* 242 */ {"SBT113", "Simulated brightness temp for GOES11, channel 3 [K]"}, - /* 243 */ {"SBT114", "Simulated brightness temp for GOES11, channel 4 [K]"}, - /* 244 */ {"SBT115", "Simulated brightness temp for GOES11, channel 5 [K]"}, - /* 245 */ {"var245", "undefined"}, - /* 246 */ {"RCS", "Solar parameter in canopy conductance [fraction]"}, - /* 247 */ {"RCT", "Temperature parameter in canopy conductance [fraction]"}, - /* 248 */ {"RCQ", "Humidity parameter in canopy conductance [fraction]"}, - /* 249 */ {"RCSOL", "Soil moisture parameter in canopy conductance [fraction]"}, - /* 250 */ {"var250", "undefined"}, - /* 251 */ {"var251", "undefined"}, - /* 252 */ {"CD", "Surface drag coefficient [non-dim]"}, - /* 253 */ {"FRICV", "Surface friction velocity [m/s]"}, - /* 254 */ {"RI", "Richardson number [non-dim]"}, - /* 255 */ {"var255", "undefined"}, + /* 0 */ {"var0", "undefined"}, + /* 1 */ {"PRES", "Pressure [Pa]"}, + /* 2 */ {"PRMSL", "Pressure reduced to MSL [Pa]"}, + /* 3 */ {"PTEND", "Pressure tendency [Pa/s]"}, + /* 4 */ {"PVORT", "Pot. vorticity [km^2/kg/s]"}, + /* 5 */ {"ICAHT", "ICAO Standard Atmosphere Reference Height [M]"}, + /* 6 */ {"GP", "Geopotential [m^2/s^2]"}, + /* 7 */ {"HGT", "Geopotential height [gpm]"}, + /* 8 */ {"DIST", "Geometric height [m]"}, + /* 9 */ {"HSTDV", "Std dev of height [m]"}, + /* 10 */ {"TOZNE", "Total ozone [Dobson]"}, + /* 11 */ {"TMP", "Temp. [K]"}, + /* 12 */ {"VTMP", "Virtual temp. [K]"}, + /* 13 */ {"POT", "Potential temp. [K]"}, + /* 14 */ {"EPOT", "Pseudo-adiabatic pot. temp. [K]"}, + /* 15 */ {"TMAX", "Max. temp. [K]"}, + /* 16 */ {"TMIN", "Min. temp. [K]"}, + /* 17 */ {"DPT", "Dew point temp. [K]"}, + /* 18 */ {"DEPR", "Dew point depression [K]"}, + /* 19 */ {"LAPR", "Lapse rate [K/m]"}, + /* 20 */ {"VIS", "Visibility [m]"}, + /* 21 */ {"RDSP1", "Radar spectra (1) [non-dim]"}, + /* 22 */ {"RDSP2", "Radar spectra (2) [non-dim]"}, + /* 23 */ {"RDSP3", "Radar spectra (3) [non-dim]"}, + /* 24 */ {"PLI", "Parcel lifted index (to 500 hPa) [K]"}, + /* 25 */ {"TMPA", "Temp. anomaly [K]"}, + /* 26 */ {"PRESA", "Pressure anomaly [Pa]"}, + /* 27 */ {"GPA", "Geopotential height anomaly [gpm]"}, + /* 28 */ {"WVSP1", "Wave spectra (1) [non-dim]"}, + /* 29 */ {"WVSP2", "Wave spectra (2) [non-dim]"}, + /* 30 */ {"WVSP3", "Wave spectra (3) [non-dim]"}, + /* 31 */ {"WDIR", "Wind direction [deg]"}, + /* 32 */ {"WIND", "Wind speed [m/s]"}, + /* 33 */ {"UGRD", "u wind [m/s]"}, + /* 34 */ {"VGRD", "v wind [m/s]"}, + /* 35 */ {"STRM", "Stream function [m^2/s]"}, + /* 36 */ {"VPOT", "Velocity potential [m^2/s]"}, + /* 37 */ {"MNTSF", "Montgomery stream function [m^2/s^2]"}, + /* 38 */ {"SGCVV", "Sigma coord. vertical velocity [/s]"}, + /* 39 */ {"VVEL", "Pressure vertical velocity [Pa/s]"}, + /* 40 */ {"DZDT", "Geometric vertical velocity [m/s]"}, + /* 41 */ {"ABSV", "Absolute vorticity [/s]"}, + /* 42 */ {"ABSD", "Absolute divergence [/s]"}, + /* 43 */ {"RELV", "Relative vorticity [/s]"}, + /* 44 */ {"RELD", "Relative divergence [/s]"}, + /* 45 */ {"VUCSH", "Vertical u shear [/s]"}, + /* 46 */ {"VVCSH", "Vertical v shear [/s]"}, + /* 47 */ {"DIRC", "Direction of current [deg]"}, + /* 48 */ {"SPC", "Speed of current [m/s]"}, + /* 49 */ {"UOGRD", "u of current [m/s]"}, + /* 50 */ {"VOGRD", "v of current [m/s]"}, + /* 51 */ {"SPFH", "Specific humidity [kg/kg]"}, + /* 52 */ {"RH", "Relative humidity [%]"}, + /* 53 */ {"MIXR", "Humidity mixing ratio [kg/kg]"}, + /* 54 */ {"PWAT", "Precipitable water [kg/m^2]"}, + /* 55 */ {"VAPP", "Vapor pressure [Pa]"}, + /* 56 */ {"SATD", "Saturation deficit [Pa]"}, + /* 57 */ {"EVP", "Evaporation [kg/m^2]"}, + /* 58 */ {"CICE", "Cloud Ice [kg/m^2]"}, + /* 59 */ {"PRATE", "Precipitation rate [kg/m^2/s]"}, + /* 60 */ {"TSTM", "Thunderstorm probability [%]"}, + /* 61 */ {"APCP", "Total precipitation [kg/m^2]"}, + /* 62 */ {"NCPCP", "Large scale precipitation [kg/m^2]"}, + /* 63 */ {"ACPCP", "Convective precipitation [kg/m^2]"}, + /* 64 */ {"SRWEQ", "Snowfall rate water equiv. [kg/m^2/s]"}, + /* 65 */ {"WEASD", "Accum. snow [kg/m^2]"}, + /* 66 */ {"SNOD", "Snow depth [m]"}, + /* 67 */ {"MIXHT", "Mixed layer depth [m]"}, + /* 68 */ {"TTHDP", "Transient thermocline depth [m]"}, + /* 69 */ {"MTHD", "Main thermocline depth [m]"}, + /* 70 */ {"MTHA", "Main thermocline anomaly [m]"}, + /* 71 */ {"TCDC", "Total cloud cover [%]"}, + /* 72 */ {"CDCON", "Convective cloud cover [%]"}, + /* 73 */ {"LCDC", "Low level cloud cover [%]"}, + /* 74 */ {"MCDC", "Mid level cloud cover [%]"}, + /* 75 */ {"HCDC", "High level cloud cover [%]"}, + /* 76 */ {"CWAT", "Cloud water [kg/m^2]"}, + /* 77 */ {"BLI", "Best lifted index (to 500 hPa) [K]"}, + /* 78 */ {"SNOC", "Convective snow [kg/m^2]"}, + /* 79 */ {"SNOL", "Large scale snow [kg/m^2]"}, + /* 80 */ {"WTMP", "Water temp. [K]"}, + /* 81 */ {"LAND", "Land cover (land=1;sea=0) [fraction]"}, + /* 82 */ {"DSLM", "Deviation of sea level from mean [m]"}, + /* 83 */ {"SFCR", "Surface roughness [m]"}, + /* 84 */ {"ALBDO", "Albedo [%]"}, + /* 85 */ {"TSOIL", "Soil temp. [K]"}, + /* 86 */ {"SOILM", "Soil moisture content [kg/m^2]"}, + /* 87 */ {"VEG", "Vegetation [%]"}, + /* 88 */ {"SALTY", "Salinity [kg/kg]"}, + /* 89 */ {"DEN", "Density [kg/m^3]"}, + /* 90 */ {"WATR", "Water runoff [kg/m^2]"}, + /* 91 */ {"ICEC", "Ice concentration (ice=1;no ice=0) [fraction]"}, + /* 92 */ {"ICETK", "Ice thickness [m]"}, + /* 93 */ {"DICED", "Direction of ice drift [deg]"}, + /* 94 */ {"SICED", "Speed of ice drift [m/s]"}, + /* 95 */ {"UICE", "u of ice drift [m/s]"}, + /* 96 */ {"VICE", "v of ice drift [m/s]"}, + /* 97 */ {"ICEG", "Ice growth rate [m/s]"}, + /* 98 */ {"ICED", "Ice divergence [/s]"}, + /* 99 */ {"SNOM", "Snow melt [kg/m^2]"}, + /* 100 */ {"HTSGW", "Sig height of wind waves and swell [m]"}, + /* 101 */ {"WVDIR", "Direction of wind waves [deg]"}, + /* 102 */ {"WVHGT", "Sig height of wind waves [m]"}, + /* 103 */ {"WVPER", "Mean period of wind waves [s]"}, + /* 104 */ {"SWDIR", "Direction of swell waves [deg]"}, + /* 105 */ {"SWELL", "Sig height of swell waves [m]"}, + /* 106 */ {"SWPER", "Mean period of swell waves [s]"}, + /* 107 */ {"DIRPW", "Primary wave direction [deg]"}, + /* 108 */ {"PERPW", "Primary wave mean period [s]"}, + /* 109 */ {"DIRSW", "Secondary wave direction [deg]"}, + /* 110 */ {"PERSW", "Secondary wave mean period [s]"}, + /* 111 */ {"NSWRS", "Net short wave (surface) [W/m^2]"}, + /* 112 */ {"NLWRS", "Net long wave (surface) [W/m^2]"}, + /* 113 */ {"NSWRT", "Net short wave (top) [W/m^2]"}, + /* 114 */ {"NLWRT", "Net long wave (top) [W/m^2]"}, + /* 115 */ {"LWAVR", "Long wave [W/m^2]"}, + /* 116 */ {"SWAVR", "Short wave [W/m^2]"}, + /* 117 */ {"GRAD", "Global radiation [W/m^2]"}, + /* 118 */ {"BRTMP", "Brightness temperature [K]"}, + /* 119 */ {"LWRAD", "Radiance with respect to wave no. [W/m/sr]"}, + /* 120 */ {"SWRAD", "Radiance with respect ot wave len. [W/m^3/sr]"}, + /* 121 */ {"LHTFL", "Latent heat flux [W/m^2]"}, + /* 122 */ {"SHTFL", "Sensible heat flux [W/m^2]"}, + /* 123 */ {"BLYDP", "Boundary layer dissipation [W/m^2]"}, + /* 124 */ {"UFLX", "Zonal momentum flux [N/m^2]"}, + /* 125 */ {"VFLX", "Meridional momentum flux [N/m^2]"}, + /* 126 */ {"WMIXE", "Wind mixing energy [J]"}, + /* 127 */ {"IMGD", "Image data []"}, + /* 128 */ {"var128", "undefined"}, + /* 129 */ {"var129", "undefined"}, + /* 130 */ {"var130", "undefined"}, + /* 131 */ {"var131", "undefined"}, + /* 132 */ {"var132", "undefined"}, + /* 133 */ {"var133", "undefined"}, + /* 134 */ {"var134", "undefined"}, + /* 135 */ {"var135", "undefined"}, + /* 136 */ {"var136", "undefined"}, + /* 137 */ {"var137", "undefined"}, + /* 138 */ {"var138", "undefined"}, + /* 139 */ {"var139", "undefined"}, + /* 140 */ {"var140", "undefined"}, + /* 141 */ {"var141", "undefined"}, + /* 142 */ {"var142", "undefined"}, + /* 143 */ {"var143", "undefined"}, + /* 144 */ {"SOILW", "Volumetric soil moisture (frozen + liquid) [fraction]"}, + /* 145 */ {"PEVPR", "Potential evaporation rate [W/m^2]"}, + /* 146 */ {"VEGT", "Vegetation canopy temperature [K]"}, + /* 147 */ {"BARET", "Bare soil surface skin temperature [K]"}, + /* 148 */ {"AVSFT", "Average surface skin temperature [K]"}, + /* 149 */ {"RADT", "Effective radiative skin temperature [K]"}, + /* 150 */ {"SSTOR", "Surface water storage [Kg/m^2]"}, + /* 151 */ {"LSOIL", "Liquid soil moisture content (non-frozen) [Kg/m^2]"}, + /* 152 */ {"EWATR", "Open water evaporation (standing water) [W/m^2]"}, + /* 153 */ {"NCRAIN", "Number concentration for rain particles [-]"}, + /* 154 */ {"LSPA", "Land Surface Precipitation Accumulation [kg/m^2]"}, + /* 155 */ {"GFLUX", "Ground Heat Flux [W/m^2]"}, + /* 156 */ {"CIN", "Convective inhibition [J/Kg]"}, + /* 157 */ {"CAPE", "Convective available potential energy [J/Kg]"}, + /* 158 */ {"TKE", "Turbulent Kinetic Energy [J/Kg]"}, + /* 159 */ {"MXSALB", "Maximum snow albedo [%]"}, + /* 160 */ {"SOILL", "Liquid volumetric soil moisture (non-frozen) [fraction]"}, + /* 161 */ {"ASNOW", "Frozen precipitation (e.g. snowfall) [Kg/m^2]"}, + /* 162 */ {"ARAIN", "Liquid precipitation (rainfall) [Kg/m^2]"}, + /* 163 */ {"GWREC", "Groundwater recharge [Kg/m^2]"}, + /* 164 */ {"QREC", "Flood plain recharge [Kg/m^2]"}, + /* 165 */ {"SNOWT", "Snow temperature, depth-avg [K]"}, + /* 166 */ {"VBDSF", "Visible beam downward solar flux [W/m^2]"}, + /* 167 */ {"VDDSF", "Visible diffuse downward solar flux [W/m^2]"}, + /* 168 */ {"NBDSF", "Near IR beam downward solar flux [W/m^2]"}, + /* 169 */ {"NDDSF", "Near IR diffuse downward solar flux [W/m^2]"}, + /* 170 */ {"SNFALB", "Snow-free albedo [%]"}, + /* 171 */ {"RLYRS", "Number of soil layers in root zone [non-dim]"}, + /* 172 */ {"MFLX", "Momentum flux [N/m^2]"}, + /* 173 */ {"var173", "undefined"}, + /* 174 */ {"var174", "undefined"}, + /* 175 */ {"var175", "undefined"}, + /* 176 */ {"NLAT", "Latitude (-90 to +90) [deg]"}, + /* 177 */ {"ELON", "East longitude (0-360) [deg]"}, + /* 178 */ {"FLDCAP", "Field capacity [fraction]"}, + /* 179 */ {"ACOND", "Aerodynamic conductance [m/s]"}, + /* 180 */ {"SNOAG", "Snow age [s]"}, + /* 181 */ {"CCOND", "Canopy conductance [m/s]"}, + /* 182 */ {"LAI", "Leaf area index (0-9) [non-dim]"}, + /* 183 */ {"SFCRH", "Roughness length for heat [m]"}, + /* 184 */ {"SALBD", "Snow albedo (over snow cover area only) [%]"}, + /* 185 */ {"var185", "undefined"}, + /* 186 */ {"var186", "undefined"}, + /* 187 */ {"NDVI", "Normalized Difference Vegetation Index []"}, + /* 188 */ {"DRIP", "Canopy drip [Kg/m^2]"}, + /* 189 */ {"VBSALB", "Visible, black sky albedo [%]"}, + /* 190 */ {"VWSALB", "Visible, white sky albedo [%]"}, + /* 191 */ {"NBSALB", "Near IR, black sky albedo [%]"}, + /* 192 */ {"NWSALB", "Near IR, white sky albedo [%]"}, + /* 193 */ {"FRZR", "Freezing rain [kg/m^2]"}, + /* 194 */ {"FROZR", "Frozen rain [kg/m^2]"}, + /* 195 */ {"TSNOW", "Total snow [kg/m^2]"}, + /* 196 */ {"MTERH", "Model terrain height [m]"}, + /* 197 */ {"var197", "undefined"}, + /* 198 */ {"SBSNO", "Sublimation (evaporation from snow) [W/m^2]"}, + /* 199 */ {"EVBS", "Direct evaporation from bare soil [W/m^2]"}, + /* 200 */ {"EVCW", "Canopy water evaporation [W/m^2]"}, + /* 201 */ {"VTCIN", "Virtual temperature based convective inhibition [J/kg]"}, + /* 202 */ {"VTCAPE", "Virtual temperature based convective available pot. energy [J/Kg]"}, + /* 203 */ {"RSMIN", "Minimal stomatal resistance [s/m]"}, + /* 204 */ {"DSWRF", "Downward shortwave radiation flux [W/m^2]"}, + /* 205 */ {"DLWRF", "Downward longwave radiation flux [W/m^2]"}, + /* 206 */ {"VIL", "Vertically integrated liquid [Kg/m^2]"}, + /* 207 */ {"MSTAV", "Moisture availability [%]"}, + /* 208 */ {"SFEXC", "Exchange coefficient [(Kg/m^3)(m/s)]"}, + /* 209 */ {"var209", "undefined"}, + /* 210 */ {"TRANS", "Transpiration [W/m^2]"}, + /* 211 */ {"USWRF", "Upward short wave radiation flux [W/m^2]"}, + /* 212 */ {"ULWRF", "Upward long wave radiation flux [W/m^2]"}, + /* 213 */ {"var213", "undefined"}, + /* 214 */ {"var214", "undefined"}, + /* 215 */ {"var215", "undefined"}, + /* 216 */ {"var216", "undefined"}, + /* 217 */ {"var217", "undefined"}, + /* 218 */ {"var218", "undefined"}, + /* 219 */ {"WILT", "Wilting point [fraction]"}, + /* 220 */ {"FLDCP", "Field Capacity [fraction]"}, + /* 221 */ {"HPBL", "Planetary boundary layer height [m]"}, + /* 222 */ {"SLTYP", "Surface slope type [Index]"}, + /* 223 */ {"CNWAT", "Plant canopy surface water [Kg/m^2]"}, + /* 224 */ {"SOTYP", "Soil type [Index]"}, + /* 225 */ {"VGTYP", "Vegetation type [Index]"}, + /* 226 */ {"BMIXL", "Blackadars mixing length scale [m]"}, + /* 227 */ {"AMIXL", "Asymptotic mixing length scale [m]"}, + /* 228 */ {"PEVAP", "Potential evaporation [Kg/m^2]"}, + /* 229 */ {"SNOHF", "Snow phase-change heat flux [W/m^2]"}, + /* 230 */ {"SMREF", "Transpiration stress-onset (soil moisture) [fraction]"}, + /* 231 */ {"SMDRY", "Direct evaporation cease (soil moisture) [fraction]"}, + /* 232 */ {"var232", "undefined"}, + /* 233 */ {"var233", "undefined"}, + /* 234 */ {"BGRUN", "Subsurface runoff (baseflow) [Kg/m^2]"}, + /* 235 */ {"SSRUN", "Surface runoff (non-infiltrating) [Kg/m^2]"}, + /* 236 */ {"var236", "undefined"}, + /* 237 */ {"var237", "undefined"}, + /* 238 */ {"SNOWC", "Snow cover [%]"}, + /* 239 */ {"SNOT", "Snow temperature [K]"}, + /* 240 */ {"POROS", "Soil porosity [fraction]"}, + /* 241 */ {"SBT112", "Simulated brightness temp for GOES11, channel 2 [K]"}, + /* 242 */ {"SBT113", "Simulated brightness temp for GOES11, channel 3 [K]"}, + /* 243 */ {"SBT114", "Simulated brightness temp for GOES11, channel 4 [K]"}, + /* 244 */ {"SBT115", "Simulated brightness temp for GOES11, channel 5 [K]"}, + /* 245 */ {"var245", "undefined"}, + /* 246 */ {"RCS", "Solar parameter in canopy conductance [fraction]"}, + /* 247 */ {"RCT", "Temperature parameter in canopy conductance [fraction]"}, + /* 248 */ {"RCQ", "Humidity parameter in canopy conductance [fraction]"}, + /* 249 */ {"RCSOL", "Soil moisture parameter in canopy conductance [fraction]"}, + /* 250 */ {"var250", "undefined"}, + /* 251 */ {"var251", "undefined"}, + /* 252 */ {"CD", "Surface drag coefficient [non-dim]"}, + /* 253 */ {"FRICV", "Surface friction velocity [m/s]"}, + /* 254 */ {"RI", "Richardson number [non-dim]"}, + /* 255 */ {"var255", "undefined"}, }; const struct ParmTable parm_table_nceptab_133[256] = { - /* 0 */ {"var0", "undefined"}, - /* 1 */ {"PRES", "Pressure [Pa]"}, - /* 2 */ {"PRMSL", "Pressure reduced to MSL [Pa]"}, - /* 3 */ {"PTEND", "Pressure tendency [Pa/s]"}, - /* 4 */ {"PVORT", "Pot. vorticity [km^2/kg/s]"}, - /* 5 */ {"ICAHT", "ICAO Standard Atmosphere Reference Height [M]"}, - /* 6 */ {"GP", "Geopotential [m^2/s^2]"}, - /* 7 */ {"HGT", "Geopotential height [gpm]"}, - /* 8 */ {"DIST", "Geometric height [m]"}, - /* 9 */ {"HSTDV", "Std dev of height [m]"}, - /* 10 */ {"TOZNE", "Total ozone [Dobson]"}, - /* 11 */ {"TMP", "Temp. [K]"}, - /* 12 */ {"VTMP", "Virtual temp. [K]"}, - /* 13 */ {"POT", "Potential temp. [K]"}, - /* 14 */ {"EPOT", "Pseudo-adiabatic pot. temp. [K]"}, - /* 15 */ {"TMAX", "Max. temp. [K]"}, - /* 16 */ {"TMIN", "Min. temp. [K]"}, - /* 17 */ {"DPT", "Dew point temp. [K]"}, - /* 18 */ {"DEPR", "Dew point depression [K]"}, - /* 19 */ {"LAPR", "Lapse rate [K/m]"}, - /* 20 */ {"VIS", "Visibility [m]"}, - /* 21 */ {"RDSP1", "Radar spectra (1) [non-dim]"}, - /* 22 */ {"RDSP2", "Radar spectra (2) [non-dim]"}, - /* 23 */ {"RDSP3", "Radar spectra (3) [non-dim]"}, - /* 24 */ {"PLI", "Parcel lifted index (to 500 hPa) [K]"}, - /* 25 */ {"TMPA", "Temp. anomaly [K]"}, - /* 26 */ {"PRESA", "Pressure anomaly [Pa]"}, - /* 27 */ {"GPA", "Geopotential height anomaly [gpm]"}, - /* 28 */ {"WVSP1", "Wave spectra (1) [non-dim]"}, - /* 29 */ {"WVSP2", "Wave spectra (2) [non-dim]"}, - /* 30 */ {"WVSP3", "Wave spectra (3) [non-dim]"}, - /* 31 */ {"WDIR", "Wind direction [deg]"}, - /* 32 */ {"WIND", "Wind speed [m/s]"}, - /* 33 */ {"UGRD", "u wind [m/s]"}, - /* 34 */ {"VGRD", "v wind [m/s]"}, - /* 35 */ {"STRM", "Stream function [m^2/s]"}, - /* 36 */ {"VPOT", "Velocity potential [m^2/s]"}, - /* 37 */ {"MNTSF", "Montgomery stream function [m^2/s^2]"}, - /* 38 */ {"SGCVV", "Sigma coord. vertical velocity [/s]"}, - /* 39 */ {"VVEL", "Pressure vertical velocity [Pa/s]"}, - /* 40 */ {"DZDT", "Geometric vertical velocity [m/s]"}, - /* 41 */ {"ABSV", "Absolute vorticity [/s]"}, - /* 42 */ {"ABSD", "Absolute divergence [/s]"}, - /* 43 */ {"RELV", "Relative vorticity [/s]"}, - /* 44 */ {"RELD", "Relative divergence [/s]"}, - /* 45 */ {"VUCSH", "Vertical u shear [/s]"}, - /* 46 */ {"VVCSH", "Vertical v shear [/s]"}, - /* 47 */ {"DIRC", "Direction of current [deg]"}, - /* 48 */ {"SPC", "Speed of current [m/s]"}, - /* 49 */ {"UOGRD", "u of current [m/s]"}, - /* 50 */ {"VOGRD", "v of current [m/s]"}, - /* 51 */ {"SPFH", "Specific humidity [kg/kg]"}, - /* 52 */ {"RH", "Relative humidity [%]"}, - /* 53 */ {"MIXR", "Humidity mixing ratio [kg/kg]"}, - /* 54 */ {"PWAT", "Precipitable water [kg/m^2]"}, - /* 55 */ {"VAPP", "Vapor pressure [Pa]"}, - /* 56 */ {"SATD", "Saturation deficit [Pa]"}, - /* 57 */ {"EVP", "Evaporation [kg/m^2]"}, - /* 58 */ {"CICE", "Cloud Ice [kg/m^2]"}, - /* 59 */ {"PRATE", "Precipitation rate [kg/m^2/s]"}, - /* 60 */ {"TSTM", "Thunderstorm probability [%]"}, - /* 61 */ {"APCP", "Total precipitation [kg/m^2]"}, - /* 62 */ {"NCPCP", "Large scale precipitation [kg/m^2]"}, - /* 63 */ {"ACPCP", "Convective precipitation [kg/m^2]"}, - /* 64 */ {"SRWEQ", "Snowfall rate water equiv. [kg/m^2/s]"}, - /* 65 */ {"WEASD", "Accum. snow [kg/m^2]"}, - /* 66 */ {"SNOD", "Snow depth [m]"}, - /* 67 */ {"MIXHT", "Mixed layer depth [m]"}, - /* 68 */ {"TTHDP", "Transient thermocline depth [m]"}, - /* 69 */ {"MTHD", "Main thermocline depth [m]"}, - /* 70 */ {"MTHA", "Main thermocline anomaly [m]"}, - /* 71 */ {"TCDC", "Total cloud cover [%]"}, - /* 72 */ {"CDCON", "Convective cloud cover [%]"}, - /* 73 */ {"LCDC", "Low level cloud cover [%]"}, - /* 74 */ {"MCDC", "Mid level cloud cover [%]"}, - /* 75 */ {"HCDC", "High level cloud cover [%]"}, - /* 76 */ {"CWAT", "Cloud water [kg/m^2]"}, - /* 77 */ {"BLI", "Best lifted index (to 500 hPa) [K]"}, - /* 78 */ {"SNOC", "Convective snow [kg/m^2]"}, - /* 79 */ {"SNOL", "Large scale snow [kg/m^2]"}, - /* 80 */ {"WTMP", "Water temp. [K]"}, - /* 81 */ {"LAND", "Land-sea coverage (land=1;sea=0) [fraction]"}, - /* 82 */ {"DSLM", "Deviation of sea level from mean [m]"}, - /* 83 */ {"SFCR", "Surface roughness [m]"}, - /* 84 */ {"ALBDO", "Albedo [%]"}, - /* 85 */ {"TSOIL", "Soil temp. [K]"}, - /* 86 */ {"SOILM", "Soil moisture content [kg/m^2]"}, - /* 87 */ {"VEG", "Vegetation [%]"}, - /* 88 */ {"SALTY", "Salinity [kg/kg]"}, - /* 89 */ {"DEN", "Density [kg/m^3]"}, - /* 90 */ {"WATR", "Water runoff [kg/m^2]"}, - /* 91 */ {"ICEC", "Ice concentration (ice=1;no ice=0) [fraction]"}, - /* 92 */ {"ICETK", "Ice thickness [m]"}, - /* 93 */ {"DICED", "Direction of ice drift [deg]"}, - /* 94 */ {"SICED", "Speed of ice drift [m/s]"}, - /* 95 */ {"UICE", "u of ice drift [m/s]"}, - /* 96 */ {"VICE", "v of ice drift [m/s]"}, - /* 97 */ {"ICEG", "Ice growth rate [m/s]"}, - /* 98 */ {"ICED", "Ice divergence [/s]"}, - /* 99 */ {"SNOM", "Snow melt [kg/m^2]"}, - /* 100 */ {"HTSGW", "Sig height of wind waves and swell [m]"}, - /* 101 */ {"WVDIR", "Direction of wind waves [deg]"}, - /* 102 */ {"WVHGT", "Sig height of wind waves [m]"}, - /* 103 */ {"WVPER", "Mean period of wind waves [s]"}, - /* 104 */ {"SWDIR", "Direction of swell waves [deg]"}, - /* 105 */ {"SWELL", "Sig height of swell waves [m]"}, - /* 106 */ {"SWPER", "Mean period of swell waves [s]"}, - /* 107 */ {"DIRPW", "Primary wave direction [deg]"}, - /* 108 */ {"PERPW", "Primary wave mean period [s]"}, - /* 109 */ {"DIRSW", "Secondary wave direction [deg]"}, - /* 110 */ {"PERSW", "Secondary wave mean period [s]"}, - /* 111 */ {"NSWRS", "Net short wave (surface) [W/m^2]"}, - /* 112 */ {"NLWRS", "Net long wave (surface) [W/m^2]"}, - /* 113 */ {"NSWRT", "Net short wave (top) [W/m^2]"}, - /* 114 */ {"NLWRT", "Net long wave (top) [W/m^2]"}, - /* 115 */ {"LWAVR", "Long wave [W/m^2]"}, - /* 116 */ {"SWAVR", "Short wave [W/m^2]"}, - /* 117 */ {"GRAD", "Global radiation [W/m^2]"}, - /* 118 */ {"BRTMP", "Brightness temperature [K]"}, - /* 119 */ {"LWRAD", "Radiance with respect to wave no. [W/m/sr]"}, - /* 120 */ {"SWRAD", "Radiance with respect ot wave len. [W/m^3/sr]"}, - /* 121 */ {"LHTFL", "Latent heat flux [W/m^2]"}, - /* 122 */ {"SHTFL", "Sensible heat flux [W/m^2]"}, - /* 123 */ {"BLYDP", "Boundary layer dissipation [W/m^2]"}, - /* 124 */ {"UFLX", "Zonal momentum flux [N/m^2]"}, - /* 125 */ {"VFLX", "Meridional momentum flux [N/m^2]"}, - /* 126 */ {"WMIXE", "Wind mixing energy [J]"}, - /* 127 */ {"IMGD", "Image data []"}, - /* 128 */ {"var128", "undefined"}, - /* 129 */ {"var129", "undefined"}, - /* 130 */ {"var130", "undefined"}, - /* 131 */ {"var131", "undefined"}, - /* 132 */ {"var132", "undefined"}, - /* 133 */ {"var133", "undefined"}, - /* 134 */ {"var134", "undefined"}, - /* 135 */ {"var135", "undefined"}, - /* 136 */ {"var136", "undefined"}, - /* 137 */ {"var137", "undefined"}, - /* 138 */ {"var138", "undefined"}, - /* 139 */ {"POZT", "Ozone production from T term"}, - /* 140 */ {"var140", "undefined"}, - /* 141 */ {"var141", "undefined"}, - /* 142 */ {"var142", "undefined"}, - /* 143 */ {"var143", "undefined"}, - /* 144 */ {"var144", "undefined"}, - /* 145 */ {"var145", "undefined"}, - /* 146 */ {"var146", "undefined"}, - /* 147 */ {"var147", "undefined"}, - /* 148 */ {"var148", "undefined"}, - /* 149 */ {"var149", "undefined"}, - /* 150 */ {"var150", "undefined"}, - /* 151 */ {"var151", "undefined"}, - /* 152 */ {"var152", "undefined"}, - /* 153 */ {"var153", "undefined"}, - /* 154 */ {"OMGALF", "omega divided by density"}, - /* 155 */ {"var155", "undefined"}, - /* 156 */ {"var156", "undefined"}, - /* 157 */ {"var157", "undefined"}, - /* 158 */ {"var158", "undefined"}, - /* 159 */ {"var159", "undefined"}, - /* 160 */ {"var160", "undefined"}, - /* 161 */ {"var161", "undefined"}, - /* 162 */ {"var162", "undefined"}, - /* 163 */ {"var163", "undefined"}, - /* 164 */ {"COVZZ", "Covariance between u and u"}, - /* 165 */ {"COVMM", "Covariance between v and v"}, - /* 166 */ {"COVQZ", "Covariance between q and u"}, - /* 167 */ {"COVQM", "Covariance between q and v"}, - /* 168 */ {"COVTVV", "Covariance between T and omega"}, - /* 169 */ {"COVQVV", "Covariance between q and omega"}, - /* 170 */ {"var170", "undefined"}, - /* 171 */ {"var171", "undefined"}, - /* 172 */ {"var172", "undefined"}, - /* 173 */ {"LRGMR", "Large scale moistening rate"}, - /* 174 */ {"VDFOZ", "Ozone vertical diffusion"}, - /* 175 */ {"POZ", "Ozone production"}, - /* 176 */ {"AMSRE9", "Sim brightness tmp for AMSRE on Aqua channel 9 [K]"}, - /* 177 */ {"AMSRE10", "Sim brightness tmp for AMSRE on Aqua channel 10 [K]"}, - /* 178 */ {"AMSRE11", "Sim brightness tmp for AMSRE on Aqua channel 11 [K]"}, - /* 179 */ {"AMSRE12", "Sim brightness tmp for AMSRE on Aqua channel 12 [K]"}, - /* 180 */ {"var180", "undefined"}, - /* 181 */ {"GWDU", "Gravity wave drag u acceleration"}, - /* 182 */ {"GWDV", "Gravity wave drag v acceleration"}, - /* 183 */ {"CNVU", "Convective u momentum mixing acceleration"}, - /* 184 */ {"CNVV", "Convective v momentum mixing acceleration"}, - /* 185 */ {"AKHS", "Sfc exchange coeff for T and Q divided by delta z"}, - /* 186 */ {"AKMS", "Sfc exchange coeff for U and V divided by delta z"}, - /* 187 */ {"var187", "undefined"}, - /* 188 */ {"TOZ", "Ozone tendency"}, - /* 189 */ {"var189", "undefined"}, - /* 190 */ {"var190", "undefined"}, - /* 191 */ {"SUNSD", "Sunshine duration [s]"}, - /* 192 */ {"MOSF", "Meridional overturning stream function [10^6m^3/s]"}, - /* 193 */ {"EPSR", "Radiative emiissivity"}, - /* 194 */ {"var194", "undefined"}, - /* 195 */ {"QZ0", "q at top of viscous sublayer"}, - /* 196 */ {"CNGWDU", "Convective gravity wave drag zonal acceleration"}, - /* 197 */ {"CNGWDV", "Convective gravity wave drag meridional acceleration"}, - /* 198 */ {"var198", "undefined"}, - /* 199 */ {"var199", "undefined"}, - /* 200 */ {"var200", "undefined"}, - /* 201 */ {"THZ0", "Theta at top of viscous sublayer"}, - /* 202 */ {"CNVUMF", "Convective updraft mass flux"}, - /* 203 */ {"COVPSPS", "Covariance between psfc and psfc"}, - /* 204 */ {"QMAX", "Maximum specific humidity at 2m"}, - /* 205 */ {"QMIN", "Minimum specific humidity at 2m"}, - /* 206 */ {"COVQQ", "Covariance between q and q"}, - /* 207 */ {"var207", "undefined"}, - /* 208 */ {"var208", "undefined"}, - /* 209 */ {"CNVDMF", "Convective downdraft mass flux"}, - /* 210 */ {"var210", "undefined"}, - /* 211 */ {"var211", "undefined"}, - /* 212 */ {"var212", "undefined"}, - /* 213 */ {"var213", "undefined"}, - /* 214 */ {"var214", "undefined"}, - /* 215 */ {"var215", "undefined"}, - /* 216 */ {"var216", "undefined"}, - /* 217 */ {"var217", "undefined"}, - /* 218 */ {"var218", "undefined"}, - /* 219 */ {"CNVDEMF", "Convective detrainment mass flux"}, - /* 220 */ {"COVVVVV", "Covariance between omega and omega"}, - /* 221 */ {"var221", "undefined"}, - /* 222 */ {"var222", "undefined"}, - /* 223 */ {"var223", "undefined"}, - /* 224 */ {"var224", "undefined"}, - /* 225 */ {"var225", "undefined"}, - /* 226 */ {"var226", "undefined"}, - /* 227 */ {"var227", "undefined"}, - /* 228 */ {"var228", "undefined"}, - /* 229 */ {"var229", "undefined"}, - /* 230 */ {"var230", "undefined"}, - /* 231 */ {"var231", "undefined"}, - /* 232 */ {"var232", "undefined"}, - /* 233 */ {"var233", "undefined"}, - /* 234 */ {"COVTT", "Covariance between T and T"}, - /* 235 */ {"var235", "undefined"}, - /* 236 */ {"WTEND", "Tendency of vertical velocity"}, - /* 237 */ {"var237", "undefined"}, - /* 238 */ {"var238", "undefined"}, - /* 239 */ {"POZO", "Ozone production from col ozone term"}, - /* 240 */ {"var240", "undefined"}, - /* 241 */ {"var241", "undefined"}, - /* 242 */ {"var242", "undefined"}, - /* 243 */ {"var243", "undefined"}, - /* 244 */ {"var244", "undefined"}, - /* 245 */ {"var245", "undefined"}, - /* 246 */ {"var246", "undefined"}, - /* 247 */ {"var247", "undefined"}, - /* 248 */ {"var248", "undefined"}, - /* 249 */ {"var249", "undefined"}, - /* 250 */ {"var250", "undefined"}, - /* 251 */ {"var251", "undefined"}, - /* 252 */ {"var252", "undefined"}, - /* 253 */ {"var253", "undefined"}, - /* 254 */ {"var254", "undefined"}, - /* 255 */ {"var255", "undefined"}, + /* 0 */ {"var0", "undefined"}, + /* 1 */ {"PRES", "Pressure [Pa]"}, + /* 2 */ {"PRMSL", "Pressure reduced to MSL [Pa]"}, + /* 3 */ {"PTEND", "Pressure tendency [Pa/s]"}, + /* 4 */ {"PVORT", "Pot. vorticity [km^2/kg/s]"}, + /* 5 */ {"ICAHT", "ICAO Standard Atmosphere Reference Height [M]"}, + /* 6 */ {"GP", "Geopotential [m^2/s^2]"}, + /* 7 */ {"HGT", "Geopotential height [gpm]"}, + /* 8 */ {"DIST", "Geometric height [m]"}, + /* 9 */ {"HSTDV", "Std dev of height [m]"}, + /* 10 */ {"TOZNE", "Total ozone [Dobson]"}, + /* 11 */ {"TMP", "Temp. [K]"}, + /* 12 */ {"VTMP", "Virtual temp. [K]"}, + /* 13 */ {"POT", "Potential temp. [K]"}, + /* 14 */ {"EPOT", "Pseudo-adiabatic pot. temp. [K]"}, + /* 15 */ {"TMAX", "Max. temp. [K]"}, + /* 16 */ {"TMIN", "Min. temp. [K]"}, + /* 17 */ {"DPT", "Dew point temp. [K]"}, + /* 18 */ {"DEPR", "Dew point depression [K]"}, + /* 19 */ {"LAPR", "Lapse rate [K/m]"}, + /* 20 */ {"VIS", "Visibility [m]"}, + /* 21 */ {"RDSP1", "Radar spectra (1) [non-dim]"}, + /* 22 */ {"RDSP2", "Radar spectra (2) [non-dim]"}, + /* 23 */ {"RDSP3", "Radar spectra (3) [non-dim]"}, + /* 24 */ {"PLI", "Parcel lifted index (to 500 hPa) [K]"}, + /* 25 */ {"TMPA", "Temp. anomaly [K]"}, + /* 26 */ {"PRESA", "Pressure anomaly [Pa]"}, + /* 27 */ {"GPA", "Geopotential height anomaly [gpm]"}, + /* 28 */ {"WVSP1", "Wave spectra (1) [non-dim]"}, + /* 29 */ {"WVSP2", "Wave spectra (2) [non-dim]"}, + /* 30 */ {"WVSP3", "Wave spectra (3) [non-dim]"}, + /* 31 */ {"WDIR", "Wind direction [deg]"}, + /* 32 */ {"WIND", "Wind speed [m/s]"}, + /* 33 */ {"UGRD", "u wind [m/s]"}, + /* 34 */ {"VGRD", "v wind [m/s]"}, + /* 35 */ {"STRM", "Stream function [m^2/s]"}, + /* 36 */ {"VPOT", "Velocity potential [m^2/s]"}, + /* 37 */ {"MNTSF", "Montgomery stream function [m^2/s^2]"}, + /* 38 */ {"SGCVV", "Sigma coord. vertical velocity [/s]"}, + /* 39 */ {"VVEL", "Pressure vertical velocity [Pa/s]"}, + /* 40 */ {"DZDT", "Geometric vertical velocity [m/s]"}, + /* 41 */ {"ABSV", "Absolute vorticity [/s]"}, + /* 42 */ {"ABSD", "Absolute divergence [/s]"}, + /* 43 */ {"RELV", "Relative vorticity [/s]"}, + /* 44 */ {"RELD", "Relative divergence [/s]"}, + /* 45 */ {"VUCSH", "Vertical u shear [/s]"}, + /* 46 */ {"VVCSH", "Vertical v shear [/s]"}, + /* 47 */ {"DIRC", "Direction of current [deg]"}, + /* 48 */ {"SPC", "Speed of current [m/s]"}, + /* 49 */ {"UOGRD", "u of current [m/s]"}, + /* 50 */ {"VOGRD", "v of current [m/s]"}, + /* 51 */ {"SPFH", "Specific humidity [kg/kg]"}, + /* 52 */ {"RH", "Relative humidity [%]"}, + /* 53 */ {"MIXR", "Humidity mixing ratio [kg/kg]"}, + /* 54 */ {"PWAT", "Precipitable water [kg/m^2]"}, + /* 55 */ {"VAPP", "Vapor pressure [Pa]"}, + /* 56 */ {"SATD", "Saturation deficit [Pa]"}, + /* 57 */ {"EVP", "Evaporation [kg/m^2]"}, + /* 58 */ {"CICE", "Cloud Ice [kg/m^2]"}, + /* 59 */ {"PRATE", "Precipitation rate [kg/m^2/s]"}, + /* 60 */ {"TSTM", "Thunderstorm probability [%]"}, + /* 61 */ {"APCP", "Total precipitation [kg/m^2]"}, + /* 62 */ {"NCPCP", "Large scale precipitation [kg/m^2]"}, + /* 63 */ {"ACPCP", "Convective precipitation [kg/m^2]"}, + /* 64 */ {"SRWEQ", "Snowfall rate water equiv. [kg/m^2/s]"}, + /* 65 */ {"WEASD", "Accum. snow [kg/m^2]"}, + /* 66 */ {"SNOD", "Snow depth [m]"}, + /* 67 */ {"MIXHT", "Mixed layer depth [m]"}, + /* 68 */ {"TTHDP", "Transient thermocline depth [m]"}, + /* 69 */ {"MTHD", "Main thermocline depth [m]"}, + /* 70 */ {"MTHA", "Main thermocline anomaly [m]"}, + /* 71 */ {"TCDC", "Total cloud cover [%]"}, + /* 72 */ {"CDCON", "Convective cloud cover [%]"}, + /* 73 */ {"LCDC", "Low level cloud cover [%]"}, + /* 74 */ {"MCDC", "Mid level cloud cover [%]"}, + /* 75 */ {"HCDC", "High level cloud cover [%]"}, + /* 76 */ {"CWAT", "Cloud water [kg/m^2]"}, + /* 77 */ {"BLI", "Best lifted index (to 500 hPa) [K]"}, + /* 78 */ {"SNOC", "Convective snow [kg/m^2]"}, + /* 79 */ {"SNOL", "Large scale snow [kg/m^2]"}, + /* 80 */ {"WTMP", "Water temp. [K]"}, + /* 81 */ {"LAND", "Land-sea coverage (land=1;sea=0) [fraction]"}, + /* 82 */ {"DSLM", "Deviation of sea level from mean [m]"}, + /* 83 */ {"SFCR", "Surface roughness [m]"}, + /* 84 */ {"ALBDO", "Albedo [%]"}, + /* 85 */ {"TSOIL", "Soil temp. [K]"}, + /* 86 */ {"SOILM", "Soil moisture content [kg/m^2]"}, + /* 87 */ {"VEG", "Vegetation [%]"}, + /* 88 */ {"SALTY", "Salinity [kg/kg]"}, + /* 89 */ {"DEN", "Density [kg/m^3]"}, + /* 90 */ {"WATR", "Water runoff [kg/m^2]"}, + /* 91 */ {"ICEC", "Ice concentration (ice=1;no ice=0) [fraction]"}, + /* 92 */ {"ICETK", "Ice thickness [m]"}, + /* 93 */ {"DICED", "Direction of ice drift [deg]"}, + /* 94 */ {"SICED", "Speed of ice drift [m/s]"}, + /* 95 */ {"UICE", "u of ice drift [m/s]"}, + /* 96 */ {"VICE", "v of ice drift [m/s]"}, + /* 97 */ {"ICEG", "Ice growth rate [m/s]"}, + /* 98 */ {"ICED", "Ice divergence [/s]"}, + /* 99 */ {"SNOM", "Snow melt [kg/m^2]"}, + /* 100 */ {"HTSGW", "Sig height of wind waves and swell [m]"}, + /* 101 */ {"WVDIR", "Direction of wind waves [deg]"}, + /* 102 */ {"WVHGT", "Sig height of wind waves [m]"}, + /* 103 */ {"WVPER", "Mean period of wind waves [s]"}, + /* 104 */ {"SWDIR", "Direction of swell waves [deg]"}, + /* 105 */ {"SWELL", "Sig height of swell waves [m]"}, + /* 106 */ {"SWPER", "Mean period of swell waves [s]"}, + /* 107 */ {"DIRPW", "Primary wave direction [deg]"}, + /* 108 */ {"PERPW", "Primary wave mean period [s]"}, + /* 109 */ {"DIRSW", "Secondary wave direction [deg]"}, + /* 110 */ {"PERSW", "Secondary wave mean period [s]"}, + /* 111 */ {"NSWRS", "Net short wave (surface) [W/m^2]"}, + /* 112 */ {"NLWRS", "Net long wave (surface) [W/m^2]"}, + /* 113 */ {"NSWRT", "Net short wave (top) [W/m^2]"}, + /* 114 */ {"NLWRT", "Net long wave (top) [W/m^2]"}, + /* 115 */ {"LWAVR", "Long wave [W/m^2]"}, + /* 116 */ {"SWAVR", "Short wave [W/m^2]"}, + /* 117 */ {"GRAD", "Global radiation [W/m^2]"}, + /* 118 */ {"BRTMP", "Brightness temperature [K]"}, + /* 119 */ {"LWRAD", "Radiance with respect to wave no. [W/m/sr]"}, + /* 120 */ {"SWRAD", "Radiance with respect ot wave len. [W/m^3/sr]"}, + /* 121 */ {"LHTFL", "Latent heat flux [W/m^2]"}, + /* 122 */ {"SHTFL", "Sensible heat flux [W/m^2]"}, + /* 123 */ {"BLYDP", "Boundary layer dissipation [W/m^2]"}, + /* 124 */ {"UFLX", "Zonal momentum flux [N/m^2]"}, + /* 125 */ {"VFLX", "Meridional momentum flux [N/m^2]"}, + /* 126 */ {"WMIXE", "Wind mixing energy [J]"}, + /* 127 */ {"IMGD", "Image data []"}, + /* 128 */ {"var128", "undefined"}, + /* 129 */ {"var129", "undefined"}, + /* 130 */ {"var130", "undefined"}, + /* 131 */ {"var131", "undefined"}, + /* 132 */ {"var132", "undefined"}, + /* 133 */ {"var133", "undefined"}, + /* 134 */ {"var134", "undefined"}, + /* 135 */ {"var135", "undefined"}, + /* 136 */ {"var136", "undefined"}, + /* 137 */ {"var137", "undefined"}, + /* 138 */ {"var138", "undefined"}, + /* 139 */ {"POZT", "Ozone production from T term"}, + /* 140 */ {"var140", "undefined"}, + /* 141 */ {"var141", "undefined"}, + /* 142 */ {"var142", "undefined"}, + /* 143 */ {"var143", "undefined"}, + /* 144 */ {"var144", "undefined"}, + /* 145 */ {"var145", "undefined"}, + /* 146 */ {"var146", "undefined"}, + /* 147 */ {"var147", "undefined"}, + /* 148 */ {"var148", "undefined"}, + /* 149 */ {"var149", "undefined"}, + /* 150 */ {"var150", "undefined"}, + /* 151 */ {"var151", "undefined"}, + /* 152 */ {"var152", "undefined"}, + /* 153 */ {"var153", "undefined"}, + /* 154 */ {"OMGALF", "omega divided by density"}, + /* 155 */ {"var155", "undefined"}, + /* 156 */ {"var156", "undefined"}, + /* 157 */ {"var157", "undefined"}, + /* 158 */ {"var158", "undefined"}, + /* 159 */ {"var159", "undefined"}, + /* 160 */ {"var160", "undefined"}, + /* 161 */ {"var161", "undefined"}, + /* 162 */ {"var162", "undefined"}, + /* 163 */ {"var163", "undefined"}, + /* 164 */ {"COVZZ", "Covariance between u and u"}, + /* 165 */ {"COVMM", "Covariance between v and v"}, + /* 166 */ {"COVQZ", "Covariance between q and u"}, + /* 167 */ {"COVQM", "Covariance between q and v"}, + /* 168 */ {"COVTVV", "Covariance between T and omega"}, + /* 169 */ {"COVQVV", "Covariance between q and omega"}, + /* 170 */ {"var170", "undefined"}, + /* 171 */ {"var171", "undefined"}, + /* 172 */ {"var172", "undefined"}, + /* 173 */ {"LRGMR", "Large scale moistening rate"}, + /* 174 */ {"VDFOZ", "Ozone vertical diffusion"}, + /* 175 */ {"POZ", "Ozone production"}, + /* 176 */ {"AMSRE9", "Sim brightness tmp for AMSRE on Aqua channel 9 [K]"}, + /* 177 */ {"AMSRE10", "Sim brightness tmp for AMSRE on Aqua channel 10 [K]"}, + /* 178 */ {"AMSRE11", "Sim brightness tmp for AMSRE on Aqua channel 11 [K]"}, + /* 179 */ {"AMSRE12", "Sim brightness tmp for AMSRE on Aqua channel 12 [K]"}, + /* 180 */ {"var180", "undefined"}, + /* 181 */ {"GWDU", "Gravity wave drag u acceleration"}, + /* 182 */ {"GWDV", "Gravity wave drag v acceleration"}, + /* 183 */ {"CNVU", "Convective u momentum mixing acceleration"}, + /* 184 */ {"CNVV", "Convective v momentum mixing acceleration"}, + /* 185 */ {"AKHS", "Sfc exchange coeff for T and Q divided by delta z"}, + /* 186 */ {"AKMS", "Sfc exchange coeff for U and V divided by delta z"}, + /* 187 */ {"var187", "undefined"}, + /* 188 */ {"TOZ", "Ozone tendency"}, + /* 189 */ {"var189", "undefined"}, + /* 190 */ {"var190", "undefined"}, + /* 191 */ {"SUNSD", "Sunshine duration [s]"}, + /* 192 */ {"MOSF", "Meridional overturning stream function [10^6m^3/s]"}, + /* 193 */ {"EPSR", "Radiative emiissivity"}, + /* 194 */ {"var194", "undefined"}, + /* 195 */ {"QZ0", "q at top of viscous sublayer"}, + /* 196 */ {"CNGWDU", "Convective gravity wave drag zonal acceleration"}, + /* 197 */ {"CNGWDV", "Convective gravity wave drag meridional acceleration"}, + /* 198 */ {"var198", "undefined"}, + /* 199 */ {"var199", "undefined"}, + /* 200 */ {"var200", "undefined"}, + /* 201 */ {"THZ0", "Theta at top of viscous sublayer"}, + /* 202 */ {"CNVUMF", "Convective updraft mass flux"}, + /* 203 */ {"COVPSPS", "Covariance between psfc and psfc"}, + /* 204 */ {"QMAX", "Maximum specific humidity at 2m"}, + /* 205 */ {"QMIN", "Minimum specific humidity at 2m"}, + /* 206 */ {"COVQQ", "Covariance between q and q"}, + /* 207 */ {"var207", "undefined"}, + /* 208 */ {"var208", "undefined"}, + /* 209 */ {"CNVDMF", "Convective downdraft mass flux"}, + /* 210 */ {"var210", "undefined"}, + /* 211 */ {"var211", "undefined"}, + /* 212 */ {"var212", "undefined"}, + /* 213 */ {"var213", "undefined"}, + /* 214 */ {"var214", "undefined"}, + /* 215 */ {"var215", "undefined"}, + /* 216 */ {"var216", "undefined"}, + /* 217 */ {"var217", "undefined"}, + /* 218 */ {"var218", "undefined"}, + /* 219 */ {"CNVDEMF", "Convective detrainment mass flux"}, + /* 220 */ {"COVVVVV", "Covariance between omega and omega"}, + /* 221 */ {"var221", "undefined"}, + /* 222 */ {"var222", "undefined"}, + /* 223 */ {"var223", "undefined"}, + /* 224 */ {"var224", "undefined"}, + /* 225 */ {"var225", "undefined"}, + /* 226 */ {"var226", "undefined"}, + /* 227 */ {"var227", "undefined"}, + /* 228 */ {"var228", "undefined"}, + /* 229 */ {"var229", "undefined"}, + /* 230 */ {"var230", "undefined"}, + /* 231 */ {"var231", "undefined"}, + /* 232 */ {"var232", "undefined"}, + /* 233 */ {"var233", "undefined"}, + /* 234 */ {"COVTT", "Covariance between T and T"}, + /* 235 */ {"var235", "undefined"}, + /* 236 */ {"WTEND", "Tendency of vertical velocity"}, + /* 237 */ {"var237", "undefined"}, + /* 238 */ {"var238", "undefined"}, + /* 239 */ {"POZO", "Ozone production from col ozone term"}, + /* 240 */ {"var240", "undefined"}, + /* 241 */ {"var241", "undefined"}, + /* 242 */ {"var242", "undefined"}, + /* 243 */ {"var243", "undefined"}, + /* 244 */ {"var244", "undefined"}, + /* 245 */ {"var245", "undefined"}, + /* 246 */ {"var246", "undefined"}, + /* 247 */ {"var247", "undefined"}, + /* 248 */ {"var248", "undefined"}, + /* 249 */ {"var249", "undefined"}, + /* 250 */ {"var250", "undefined"}, + /* 251 */ {"var251", "undefined"}, + /* 252 */ {"var252", "undefined"}, + /* 253 */ {"var253", "undefined"}, + /* 254 */ {"var254", "undefined"}, + /* 255 */ {"var255", "undefined"}, }; const struct ParmTable parm_table_nceptab_128[256] = { - /* 0 */ {"var0", "undefined"}, - /* 1 */ {"PRES", "Pressure [Pa]"}, - /* 2 */ {"PRMSL", "Pressure reduced to MSL [Pa]"}, - /* 3 */ {"PTEND", "Pressure tendency [Pa/s]"}, - /* 4 */ {"PVORT", "Pot. vorticity [km^2/kg/s]"}, - /* 5 */ {"ICAHT", "ICAO Standard Atmosphere Reference Height [M]"}, - /* 6 */ {"GP", "Geopotential [m^2/s^2]"}, - /* 7 */ {"HGT", "Geopotential height [gpm]"}, - /* 8 */ {"DIST", "Geometric height [m]"}, - /* 9 */ {"HSTDV", "Std dev of height [m]"}, - /* 10 */ {"TOZNE", "Total ozone [Dobson]"}, - /* 11 */ {"TMP", "Temp. [K]"}, - /* 12 */ {"VTMP", "Virtual temp. [K]"}, - /* 13 */ {"POT", "Potential temp. [K]"}, - /* 14 */ {"EPOT", "Pseudo-adiabatic pot. temp. [K]"}, - /* 15 */ {"TMAX", "Max. temp. [K]"}, - /* 16 */ {"TMIN", "Min. temp. [K]"}, - /* 17 */ {"DPT", "Dew point temp. [K]"}, - /* 18 */ {"DEPR", "Dew point depression [K]"}, - /* 19 */ {"LAPR", "Lapse rate [K/m]"}, - /* 20 */ {"VIS", "Visibility [m]"}, - /* 21 */ {"RDSP1", "Radar spectra (1) [non-dim]"}, - /* 22 */ {"RDSP2", "Radar spectra (2) [non-dim]"}, - /* 23 */ {"RDSP3", "Radar spectra (3) [non-dim]"}, - /* 24 */ {"PLI", "Parcel lifted index (to 500 hPa) [K]"}, - /* 25 */ {"TMPA", "Temp. anomaly [K]"}, - /* 26 */ {"PRESA", "Pressure anomaly [Pa]"}, - /* 27 */ {"GPA", "Geopotential height anomaly [gpm]"}, - /* 28 */ {"WVSP1", "Wave spectra (1) [non-dim]"}, - /* 29 */ {"WVSP2", "Wave spectra (2) [non-dim]"}, - /* 30 */ {"WVSP3", "Wave spectra (3) [non-dim]"}, - /* 31 */ {"WDIR", "Wind direction [deg]"}, - /* 32 */ {"WIND", "Wind speed [m/s]"}, - /* 33 */ {"UGRD", "u wind [m/s]"}, - /* 34 */ {"VGRD", "v wind [m/s]"}, - /* 35 */ {"STRM", "Stream function [m^2/s]"}, - /* 36 */ {"VPOT", "Velocity potential [m^2/s]"}, - /* 37 */ {"MNTSF", "Montgomery stream function [m^2/s^2]"}, - /* 38 */ {"SGCVV", "Sigma coord. vertical velocity [/s]"}, - /* 39 */ {"VVEL", "Pressure vertical velocity [Pa/s]"}, - /* 40 */ {"DZDT", "Geometric vertical velocity [m/s]"}, - /* 41 */ {"ABSV", "Absolute vorticity [/s]"}, - /* 42 */ {"ABSD", "Absolute divergence [/s]"}, - /* 43 */ {"RELV", "Relative vorticity [/s]"}, - /* 44 */ {"RELD", "Relative divergence [/s]"}, - /* 45 */ {"VUCSH", "Vertical u shear [/s]"}, - /* 46 */ {"VVCSH", "Vertical v shear [/s]"}, - /* 47 */ {"DIRC", "Direction of current [deg]"}, - /* 48 */ {"SPC", "Speed of current [m/s]"}, - /* 49 */ {"UOGRD", "u of current [m/s]"}, - /* 50 */ {"VOGRD", "v of current [m/s]"}, - /* 51 */ {"SPFH", "Specific humidity [kg/kg]"}, - /* 52 */ {"RH", "Relative humidity [%]"}, - /* 53 */ {"MIXR", "Humidity mixing ratio [kg/kg]"}, - /* 54 */ {"PWAT", "Precipitable water [kg/m^2]"}, - /* 55 */ {"VAPP", "Vapor pressure [Pa]"}, - /* 56 */ {"SATD", "Saturation deficit [Pa]"}, - /* 57 */ {"EVP", "Evaporation [kg/m^2]"}, - /* 58 */ {"CICE", "Cloud Ice [kg/m^2]"}, - /* 59 */ {"PRATE", "Precipitation rate [kg/m^2/s]"}, - /* 60 */ {"TSTM", "Thunderstorm probability [%]"}, - /* 61 */ {"APCP", "Total precipitation [kg/m^2]"}, - /* 62 */ {"NCPCP", "Large scale precipitation [kg/m^2]"}, - /* 63 */ {"ACPCP", "Convective precipitation [kg/m^2]"}, - /* 64 */ {"SRWEQ", "Snowfall rate water equiv. [kg/m^2/s]"}, - /* 65 */ {"WEASD", "Accum. snow [kg/m^2]"}, - /* 66 */ {"SNOD", "Snow depth [m]"}, - /* 67 */ {"MIXHT", "Mixed layer depth [m]"}, - /* 68 */ {"TTHDP", "Transient thermocline depth [m]"}, - /* 69 */ {"MTHD", "Main thermocline depth [m]"}, - /* 70 */ {"MTHA", "Main thermocline anomaly [m]"}, - /* 71 */ {"TCDC", "Total cloud cover [%]"}, - /* 72 */ {"CDCON", "Convective cloud cover [%]"}, - /* 73 */ {"LCDC", "Low level cloud cover [%]"}, - /* 74 */ {"MCDC", "Mid level cloud cover [%]"}, - /* 75 */ {"HCDC", "High level cloud cover [%]"}, - /* 76 */ {"CWAT", "Cloud water [kg/m^2]"}, - /* 77 */ {"BLI", "Best lifted index (to 500 hPa) [K]"}, - /* 78 */ {"SNOC", "Convective snow [kg/m^2]"}, - /* 79 */ {"SNOL", "Large scale snow [kg/m^2]"}, - /* 80 */ {"WTMP", "Water temp. [K]"}, - /* 81 */ {"LAND", "Land cover (land=1;sea=0) [fraction]"}, - /* 82 */ {"DSLM", "Deviation of sea level from mean [m]"}, - /* 83 */ {"SFCR", "Surface roughness [m]"}, - /* 84 */ {"ALBDO", "Albedo [%]"}, - /* 85 */ {"TSOIL", "Soil temp. [K]"}, - /* 86 */ {"SOILM", "Soil moisture content [kg/m^2]"}, - /* 87 */ {"VEG", "Vegetation [%]"}, - /* 88 */ {"SALTY", "Salinity [kg/kg]"}, - /* 89 */ {"DEN", "Density [kg/m^3]"}, - /* 90 */ {"WATR", "Water runoff [kg/m^2]"}, - /* 91 */ {"ICEC", "Ice concentration (ice=1;no ice=0) [fraction]"}, - /* 92 */ {"ICETK", "Ice thickness [m]"}, - /* 93 */ {"DICED", "Direction of ice drift [deg]"}, - /* 94 */ {"SICED", "Speed of ice drift [m/s]"}, - /* 95 */ {"UICE", "u of ice drift [m/s]"}, - /* 96 */ {"VICE", "v of ice drift [m/s]"}, - /* 97 */ {"ICEG", "Ice growth rate [m/s]"}, - /* 98 */ {"ICED", "Ice divergence [/s]"}, - /* 99 */ {"SNOM", "Snow melt [kg/m^2]"}, - /* 100 */ {"HTSGW", "Sig height of wind waves and swell [m]"}, - /* 101 */ {"WVDIR", "Direction of wind waves [deg]"}, - /* 102 */ {"WVHGT", "Sig height of wind waves [m]"}, - /* 103 */ {"WVPER", "Mean period of wind waves [s]"}, - /* 104 */ {"SWDIR", "Direction of swell waves [deg]"}, - /* 105 */ {"SWELL", "Sig height of swell waves [m]"}, - /* 106 */ {"SWPER", "Mean period of swell waves [s]"}, - /* 107 */ {"DIRPW", "Primary wave direction [deg]"}, - /* 108 */ {"PERPW", "Primary wave mean period [s]"}, - /* 109 */ {"DIRSW", "Secondary wave direction [deg]"}, - /* 110 */ {"PERSW", "Secondary wave mean period [s]"}, - /* 111 */ {"NSWRS", "Net short wave (surface) [W/m^2]"}, - /* 112 */ {"NLWRS", "Net long wave (surface) [W/m^2]"}, - /* 113 */ {"NSWRT", "Net short wave (top) [W/m^2]"}, - /* 114 */ {"NLWRT", "Net long wave (top) [W/m^2]"}, - /* 115 */ {"LWAVR", "Long wave [W/m^2]"}, - /* 116 */ {"SWAVR", "Short wave [W/m^2]"}, - /* 117 */ {"GRAD", "Global radiation [W/m^2]"}, - /* 118 */ {"BRTMP", "Brightness temperature [K]"}, - /* 119 */ {"LWRAD", "Radiance with respect to wave no. [W/m/sr]"}, - /* 120 */ {"SWRAD", "Radiance with respect ot wave len. [W/m^3/sr]"}, - /* 121 */ {"LHTFL", "Latent heat flux [W/m^2]"}, - /* 122 */ {"SHTFL", "Sensible heat flux [W/m^2]"}, - /* 123 */ {"BLYDP", "Boundary layer dissipation [W/m^2]"}, - /* 124 */ {"UFLX", "Zonal momentum flux [N/m^2]"}, - /* 125 */ {"VFLX", "Meridional momentum flux [N/m^2]"}, - /* 126 */ {"WMIXE", "Wind mixing energy [J]"}, - /* 127 */ {"IMGD", "Image data []"}, - /* 128 */ {"AVDEPTH", "Ocean depth - mean [m]"}, - /* 129 */ {"DEPTH", "Ocean depth - instantaneous [m]"}, - /* 130 */ {"ELEV", "Ocean surface elevation relative to geoid [m]"}, - /* 131 */ {"MXEL24", "Max ocean surface elevation in last 24 hours [m]"}, - /* 132 */ {"MNEL24", "Min ocean surface elevation in last 24 hours [m]"}, - /* 133 */ {"var133", "undefined"}, - /* 134 */ {"var134", "undefined"}, - /* 135 */ {"O2", "Oxygen (O2 (aq)) []"}, - /* 136 */ {"PO4", "PO4 [Mol/kg]"}, - /* 137 */ {"NO3", "NO3 [Mol/kg]"}, - /* 138 */ {"SiO4", "SiO4 [Mol/kg]"}, - /* 139 */ {"CO2aq", "CO2 (aq) [Mol/kg]"}, - /* 140 */ {"HCO3", "HCO3 - [Mol/kg]"}, - /* 141 */ {"CO3", "CO3 -- [Mol/kg]"}, - /* 142 */ {"TCO2", "TCO2 [Mol/kg]"}, - /* 143 */ {"TALK", "TALK [Mol/kg]"}, - /* 144 */ {"var144", "undefined"}, - /* 145 */ {"var145", "undefined"}, - /* 146 */ {"S11", "S11 - 1,1 component of ice stress tensor []"}, - /* 147 */ {"S12", "S12 - 1,2 component of ice stress tensor []"}, - /* 148 */ {"S22", "S22 - 2,2 component of ice stress tensor []"}, - /* 149 */ {"INV1", "T1 - First invariant of stress tensor []"}, - /* 150 */ {"INV2", "T2 - Second invariant of stress tensor []"}, - /* 151 */ {"var151", "undefined"}, - /* 152 */ {"var152", "undefined"}, - /* 153 */ {"var153", "undefined"}, - /* 154 */ {"var154", "undefined"}, - /* 155 */ {"WVRGH", "Wave Roughness[ ]"}, - /* 156 */ {"WVSTRS", "Wave Stresses []"}, - /* 157 */ {"WHITE", "Whitecap coverage []"}, - /* 158 */ {"SWDIRWID", "Swell direction width []"}, - /* 159 */ {"SWFREWID", "Swell frequency width []"}, - /* 160 */ {"WVAGE", "Wave age []"}, - /* 161 */ {"PWVAGE", "Physical Wave age []"}, - /* 162 */ {"var162", "undefined"}, - /* 163 */ {"var163", "undefined"}, - /* 164 */ {"var164", "undefined"}, - /* 165 */ {"LTURB", "Master length scale (turbulence) [m]"}, - /* 166 */ {"var166", "undefined"}, - /* 167 */ {"var167", "undefined"}, - /* 168 */ {"var168", "undefined"}, - /* 169 */ {"var169", "undefined"}, - /* 170 */ {"AIHFLX", "Net Air-Ice heat flux [W/m^2]"}, - /* 171 */ {"AOHFLX", "Net Air-Ocean heat flux [W/m^2]"}, - /* 172 */ {"IOHFLX", "Net Ice-Ocean heat flux [W/m^2]"}, - /* 173 */ {"IOSFLX", "Net Ice-Ocean salt flux kg/s]"}, - /* 174 */ {"var174", "undefined"}, - /* 175 */ {"OMLT", "Ocean Mixed Layer Temperature [K]"}, - /* 176 */ {"OMLS", "Ocean Mixed Layer Salinity [kg/kg]"}, - /* 177 */ {"OMLPOTDEN", "Ocean Mixed Layer Potential density (Referenced to 2000m) [kg/m^3]"}, - /* 178 */ {"OMLU", "U Velocity in mixed layer [m/s]"}, - /* 179 */ {"OMLV", "V Velocity in mixed layer [m/s]"}, - /* 180 */ {"ASHFL", "Assimilative Heat Flux [W/m^2]"}, - /* 181 */ {"ASSFL", "Assimilative Salt Flux [mm/day]"}, - /* 182 */ {"BOTLD", "Bottom Layer Depth [m]"}, - /* 183 */ {"UBARO", "Barotropic U Velocity [m/s]"}, - /* 184 */ {"VBARO", "Barotropic V Velocity [m/s]"}, - /* 185 */ {"INTFD", "Interface Depth [m]"}, - /* 186 */ {"WTMPC", "Temperature [C]"}, - /* 187 */ {"SALIN", "Salinity [psu]"}, - /* 188 */ {"EMNP", "Evaporation - Precipitation [cm/day]"}, - /* 189 */ {"var189", "undefined"}, - /* 190 */ {"KENG", "Kinetic Energy [J/kg]"}, - /* 191 */ {"var191", "undefined"}, - /* 192 */ {"LAYTH", "Layer Thickness[m]"}, - /* 193 */ {"SSTT", "Surface Temperature Trend [K/day]"}, - /* 194 */ {"SSST", "Surface Salinity Trend [psu/day]"}, - /* 195 */ {"OVHD", "Ocean vertical heat diffusivity [m^2/s]"}, - /* 196 */ {"OVSD", "Ocean vertical salt diffusivity [m^2/s]"}, - /* 197 */ {"OVMD", "Ocean vertical momementum diffusivity [m^2/s]"}, - /* 198 */ {"var198", "undefined"}, - /* 199 */ {"var199", "undefined"}, - /* 200 */ {"var200", "undefined"}, - /* 201 */ {"var201", "undefined"}, - /* 202 */ {"var202", "undefined"}, - /* 203 */ {"var203", "undefined"}, - /* 204 */ {"var204", "undefined"}, - /* 205 */ {"var205", "undefined"}, - /* 206 */ {"var206", "undefined"}, - /* 207 */ {"var207", "undefined"}, - /* 208 */ {"var208", "undefined"}, - /* 209 */ {"var209", "undefined"}, - /* 210 */ {"var210", "undefined"}, - /* 211 */ {"var211", "undefined"}, - /* 212 */ {"var212", "undefined"}, - /* 213 */ {"var213", "undefined"}, - /* 214 */ {"var214", "undefined"}, - /* 215 */ {"var215", "undefined"}, - /* 216 */ {"var216", "undefined"}, - /* 217 */ {"var217", "undefined"}, - /* 218 */ {"var218", "undefined"}, - /* 219 */ {"var219", "undefined"}, - /* 220 */ {"var220", "undefined"}, - /* 221 */ {"var221", "undefined"}, - /* 222 */ {"var222", "undefined"}, - /* 223 */ {"var223", "undefined"}, - /* 224 */ {"var224", "undefined"}, - /* 225 */ {"var225", "undefined"}, - /* 226 */ {"var226", "undefined"}, - /* 227 */ {"var227", "undefined"}, - /* 228 */ {"var228", "undefined"}, - /* 229 */ {"var229", "undefined"}, - /* 230 */ {"var230", "undefined"}, - /* 231 */ {"var231", "undefined"}, - /* 232 */ {"var232", "undefined"}, - /* 233 */ {"var233", "undefined"}, - /* 234 */ {"var234", "undefined"}, - /* 235 */ {"var235", "undefined"}, - /* 236 */ {"var236", "undefined"}, - /* 237 */ {"var237", "undefined"}, - /* 238 */ {"var238", "undefined"}, - /* 239 */ {"var239", "undefined"}, - /* 240 */ {"var240", "undefined"}, - /* 241 */ {"var241", "undefined"}, - /* 242 */ {"var242", "undefined"}, - /* 243 */ {"var243", "undefined"}, - /* 244 */ {"var244", "undefined"}, - /* 245 */ {"var245", "undefined"}, - /* 246 */ {"var246", "undefined"}, - /* 247 */ {"var247", "undefined"}, - /* 248 */ {"var248", "undefined"}, - /* 249 */ {"var249", "undefined"}, - /* 250 */ {"var250", "undefined"}, - /* 251 */ {"var251", "undefined"}, - /* 252 */ {"var252", "undefined"}, - /* 253 */ {"var253", "undefined"}, - /* 254 */ {"RERRVAR", "Relative Error Variance [pure number]"}, - /* 255 */ {"var255", "undefined"}, + /* 0 */ {"var0", "undefined"}, + /* 1 */ {"PRES", "Pressure [Pa]"}, + /* 2 */ {"PRMSL", "Pressure reduced to MSL [Pa]"}, + /* 3 */ {"PTEND", "Pressure tendency [Pa/s]"}, + /* 4 */ {"PVORT", "Pot. vorticity [km^2/kg/s]"}, + /* 5 */ {"ICAHT", "ICAO Standard Atmosphere Reference Height [M]"}, + /* 6 */ {"GP", "Geopotential [m^2/s^2]"}, + /* 7 */ {"HGT", "Geopotential height [gpm]"}, + /* 8 */ {"DIST", "Geometric height [m]"}, + /* 9 */ {"HSTDV", "Std dev of height [m]"}, + /* 10 */ {"TOZNE", "Total ozone [Dobson]"}, + /* 11 */ {"TMP", "Temp. [K]"}, + /* 12 */ {"VTMP", "Virtual temp. [K]"}, + /* 13 */ {"POT", "Potential temp. [K]"}, + /* 14 */ {"EPOT", "Pseudo-adiabatic pot. temp. [K]"}, + /* 15 */ {"TMAX", "Max. temp. [K]"}, + /* 16 */ {"TMIN", "Min. temp. [K]"}, + /* 17 */ {"DPT", "Dew point temp. [K]"}, + /* 18 */ {"DEPR", "Dew point depression [K]"}, + /* 19 */ {"LAPR", "Lapse rate [K/m]"}, + /* 20 */ {"VIS", "Visibility [m]"}, + /* 21 */ {"RDSP1", "Radar spectra (1) [non-dim]"}, + /* 22 */ {"RDSP2", "Radar spectra (2) [non-dim]"}, + /* 23 */ {"RDSP3", "Radar spectra (3) [non-dim]"}, + /* 24 */ {"PLI", "Parcel lifted index (to 500 hPa) [K]"}, + /* 25 */ {"TMPA", "Temp. anomaly [K]"}, + /* 26 */ {"PRESA", "Pressure anomaly [Pa]"}, + /* 27 */ {"GPA", "Geopotential height anomaly [gpm]"}, + /* 28 */ {"WVSP1", "Wave spectra (1) [non-dim]"}, + /* 29 */ {"WVSP2", "Wave spectra (2) [non-dim]"}, + /* 30 */ {"WVSP3", "Wave spectra (3) [non-dim]"}, + /* 31 */ {"WDIR", "Wind direction [deg]"}, + /* 32 */ {"WIND", "Wind speed [m/s]"}, + /* 33 */ {"UGRD", "u wind [m/s]"}, + /* 34 */ {"VGRD", "v wind [m/s]"}, + /* 35 */ {"STRM", "Stream function [m^2/s]"}, + /* 36 */ {"VPOT", "Velocity potential [m^2/s]"}, + /* 37 */ {"MNTSF", "Montgomery stream function [m^2/s^2]"}, + /* 38 */ {"SGCVV", "Sigma coord. vertical velocity [/s]"}, + /* 39 */ {"VVEL", "Pressure vertical velocity [Pa/s]"}, + /* 40 */ {"DZDT", "Geometric vertical velocity [m/s]"}, + /* 41 */ {"ABSV", "Absolute vorticity [/s]"}, + /* 42 */ {"ABSD", "Absolute divergence [/s]"}, + /* 43 */ {"RELV", "Relative vorticity [/s]"}, + /* 44 */ {"RELD", "Relative divergence [/s]"}, + /* 45 */ {"VUCSH", "Vertical u shear [/s]"}, + /* 46 */ {"VVCSH", "Vertical v shear [/s]"}, + /* 47 */ {"DIRC", "Direction of current [deg]"}, + /* 48 */ {"SPC", "Speed of current [m/s]"}, + /* 49 */ {"UOGRD", "u of current [m/s]"}, + /* 50 */ {"VOGRD", "v of current [m/s]"}, + /* 51 */ {"SPFH", "Specific humidity [kg/kg]"}, + /* 52 */ {"RH", "Relative humidity [%]"}, + /* 53 */ {"MIXR", "Humidity mixing ratio [kg/kg]"}, + /* 54 */ {"PWAT", "Precipitable water [kg/m^2]"}, + /* 55 */ {"VAPP", "Vapor pressure [Pa]"}, + /* 56 */ {"SATD", "Saturation deficit [Pa]"}, + /* 57 */ {"EVP", "Evaporation [kg/m^2]"}, + /* 58 */ {"CICE", "Cloud Ice [kg/m^2]"}, + /* 59 */ {"PRATE", "Precipitation rate [kg/m^2/s]"}, + /* 60 */ {"TSTM", "Thunderstorm probability [%]"}, + /* 61 */ {"APCP", "Total precipitation [kg/m^2]"}, + /* 62 */ {"NCPCP", "Large scale precipitation [kg/m^2]"}, + /* 63 */ {"ACPCP", "Convective precipitation [kg/m^2]"}, + /* 64 */ {"SRWEQ", "Snowfall rate water equiv. [kg/m^2/s]"}, + /* 65 */ {"WEASD", "Accum. snow [kg/m^2]"}, + /* 66 */ {"SNOD", "Snow depth [m]"}, + /* 67 */ {"MIXHT", "Mixed layer depth [m]"}, + /* 68 */ {"TTHDP", "Transient thermocline depth [m]"}, + /* 69 */ {"MTHD", "Main thermocline depth [m]"}, + /* 70 */ {"MTHA", "Main thermocline anomaly [m]"}, + /* 71 */ {"TCDC", "Total cloud cover [%]"}, + /* 72 */ {"CDCON", "Convective cloud cover [%]"}, + /* 73 */ {"LCDC", "Low level cloud cover [%]"}, + /* 74 */ {"MCDC", "Mid level cloud cover [%]"}, + /* 75 */ {"HCDC", "High level cloud cover [%]"}, + /* 76 */ {"CWAT", "Cloud water [kg/m^2]"}, + /* 77 */ {"BLI", "Best lifted index (to 500 hPa) [K]"}, + /* 78 */ {"SNOC", "Convective snow [kg/m^2]"}, + /* 79 */ {"SNOL", "Large scale snow [kg/m^2]"}, + /* 80 */ {"WTMP", "Water temp. [K]"}, + /* 81 */ {"LAND", "Land cover (land=1;sea=0) [fraction]"}, + /* 82 */ {"DSLM", "Deviation of sea level from mean [m]"}, + /* 83 */ {"SFCR", "Surface roughness [m]"}, + /* 84 */ {"ALBDO", "Albedo [%]"}, + /* 85 */ {"TSOIL", "Soil temp. [K]"}, + /* 86 */ {"SOILM", "Soil moisture content [kg/m^2]"}, + /* 87 */ {"VEG", "Vegetation [%]"}, + /* 88 */ {"SALTY", "Salinity [kg/kg]"}, + /* 89 */ {"DEN", "Density [kg/m^3]"}, + /* 90 */ {"WATR", "Water runoff [kg/m^2]"}, + /* 91 */ {"ICEC", "Ice concentration (ice=1;no ice=0) [fraction]"}, + /* 92 */ {"ICETK", "Ice thickness [m]"}, + /* 93 */ {"DICED", "Direction of ice drift [deg]"}, + /* 94 */ {"SICED", "Speed of ice drift [m/s]"}, + /* 95 */ {"UICE", "u of ice drift [m/s]"}, + /* 96 */ {"VICE", "v of ice drift [m/s]"}, + /* 97 */ {"ICEG", "Ice growth rate [m/s]"}, + /* 98 */ {"ICED", "Ice divergence [/s]"}, + /* 99 */ {"SNOM", "Snow melt [kg/m^2]"}, + /* 100 */ {"HTSGW", "Sig height of wind waves and swell [m]"}, + /* 101 */ {"WVDIR", "Direction of wind waves [deg]"}, + /* 102 */ {"WVHGT", "Sig height of wind waves [m]"}, + /* 103 */ {"WVPER", "Mean period of wind waves [s]"}, + /* 104 */ {"SWDIR", "Direction of swell waves [deg]"}, + /* 105 */ {"SWELL", "Sig height of swell waves [m]"}, + /* 106 */ {"SWPER", "Mean period of swell waves [s]"}, + /* 107 */ {"DIRPW", "Primary wave direction [deg]"}, + /* 108 */ {"PERPW", "Primary wave mean period [s]"}, + /* 109 */ {"DIRSW", "Secondary wave direction [deg]"}, + /* 110 */ {"PERSW", "Secondary wave mean period [s]"}, + /* 111 */ {"NSWRS", "Net short wave (surface) [W/m^2]"}, + /* 112 */ {"NLWRS", "Net long wave (surface) [W/m^2]"}, + /* 113 */ {"NSWRT", "Net short wave (top) [W/m^2]"}, + /* 114 */ {"NLWRT", "Net long wave (top) [W/m^2]"}, + /* 115 */ {"LWAVR", "Long wave [W/m^2]"}, + /* 116 */ {"SWAVR", "Short wave [W/m^2]"}, + /* 117 */ {"GRAD", "Global radiation [W/m^2]"}, + /* 118 */ {"BRTMP", "Brightness temperature [K]"}, + /* 119 */ {"LWRAD", "Radiance with respect to wave no. [W/m/sr]"}, + /* 120 */ {"SWRAD", "Radiance with respect ot wave len. [W/m^3/sr]"}, + /* 121 */ {"LHTFL", "Latent heat flux [W/m^2]"}, + /* 122 */ {"SHTFL", "Sensible heat flux [W/m^2]"}, + /* 123 */ {"BLYDP", "Boundary layer dissipation [W/m^2]"}, + /* 124 */ {"UFLX", "Zonal momentum flux [N/m^2]"}, + /* 125 */ {"VFLX", "Meridional momentum flux [N/m^2]"}, + /* 126 */ {"WMIXE", "Wind mixing energy [J]"}, + /* 127 */ {"IMGD", "Image data []"}, + /* 128 */ {"AVDEPTH", "Ocean depth - mean [m]"}, + /* 129 */ {"DEPTH", "Ocean depth - instantaneous [m]"}, + /* 130 */ {"ELEV", "Ocean surface elevation relative to geoid [m]"}, + /* 131 */ {"MXEL24", "Max ocean surface elevation in last 24 hours [m]"}, + /* 132 */ {"MNEL24", "Min ocean surface elevation in last 24 hours [m]"}, + /* 133 */ {"var133", "undefined"}, + /* 134 */ {"var134", "undefined"}, + /* 135 */ {"O2", "Oxygen (O2 (aq)) []"}, + /* 136 */ {"PO4", "PO4 [Mol/kg]"}, + /* 137 */ {"NO3", "NO3 [Mol/kg]"}, + /* 138 */ {"SiO4", "SiO4 [Mol/kg]"}, + /* 139 */ {"CO2aq", "CO2 (aq) [Mol/kg]"}, + /* 140 */ {"HCO3", "HCO3 - [Mol/kg]"}, + /* 141 */ {"CO3", "CO3 -- [Mol/kg]"}, + /* 142 */ {"TCO2", "TCO2 [Mol/kg]"}, + /* 143 */ {"TALK", "TALK [Mol/kg]"}, + /* 144 */ {"var144", "undefined"}, + /* 145 */ {"var145", "undefined"}, + /* 146 */ {"S11", "S11 - 1,1 component of ice stress tensor []"}, + /* 147 */ {"S12", "S12 - 1,2 component of ice stress tensor []"}, + /* 148 */ {"S22", "S22 - 2,2 component of ice stress tensor []"}, + /* 149 */ {"INV1", "T1 - First invariant of stress tensor []"}, + /* 150 */ {"INV2", "T2 - Second invariant of stress tensor []"}, + /* 151 */ {"var151", "undefined"}, + /* 152 */ {"var152", "undefined"}, + /* 153 */ {"var153", "undefined"}, + /* 154 */ {"var154", "undefined"}, + /* 155 */ {"WVRGH", "Wave Roughness[ ]"}, + /* 156 */ {"WVSTRS", "Wave Stresses []"}, + /* 157 */ {"WHITE", "Whitecap coverage []"}, + /* 158 */ {"SWDIRWID", "Swell direction width []"}, + /* 159 */ {"SWFREWID", "Swell frequency width []"}, + /* 160 */ {"WVAGE", "Wave age []"}, + /* 161 */ {"PWVAGE", "Physical Wave age []"}, + /* 162 */ {"var162", "undefined"}, + /* 163 */ {"var163", "undefined"}, + /* 164 */ {"var164", "undefined"}, + /* 165 */ {"LTURB", "Master length scale (turbulence) [m]"}, + /* 166 */ {"var166", "undefined"}, + /* 167 */ {"var167", "undefined"}, + /* 168 */ {"var168", "undefined"}, + /* 169 */ {"var169", "undefined"}, + /* 170 */ {"AIHFLX", "Net Air-Ice heat flux [W/m^2]"}, + /* 171 */ {"AOHFLX", "Net Air-Ocean heat flux [W/m^2]"}, + /* 172 */ {"IOHFLX", "Net Ice-Ocean heat flux [W/m^2]"}, + /* 173 */ {"IOSFLX", "Net Ice-Ocean salt flux kg/s]"}, + /* 174 */ {"var174", "undefined"}, + /* 175 */ {"OMLT", "Ocean Mixed Layer Temperature [K]"}, + /* 176 */ {"OMLS", "Ocean Mixed Layer Salinity [kg/kg]"}, + /* 177 */ {"OMLPOTDEN", "Ocean Mixed Layer Potential density (Referenced to 2000m) [kg/m^3]"}, + /* 178 */ {"OMLU", "U Velocity in mixed layer [m/s]"}, + /* 179 */ {"OMLV", "V Velocity in mixed layer [m/s]"}, + /* 180 */ {"ASHFL", "Assimilative Heat Flux [W/m^2]"}, + /* 181 */ {"ASSFL", "Assimilative Salt Flux [mm/day]"}, + /* 182 */ {"BOTLD", "Bottom Layer Depth [m]"}, + /* 183 */ {"UBARO", "Barotropic U Velocity [m/s]"}, + /* 184 */ {"VBARO", "Barotropic V Velocity [m/s]"}, + /* 185 */ {"INTFD", "Interface Depth [m]"}, + /* 186 */ {"WTMPC", "Temperature [C]"}, + /* 187 */ {"SALIN", "Salinity [psu]"}, + /* 188 */ {"EMNP", "Evaporation - Precipitation [cm/day]"}, + /* 189 */ {"var189", "undefined"}, + /* 190 */ {"KENG", "Kinetic Energy [J/kg]"}, + /* 191 */ {"var191", "undefined"}, + /* 192 */ {"LAYTH", "Layer Thickness[m]"}, + /* 193 */ {"SSTT", "Surface Temperature Trend [K/day]"}, + /* 194 */ {"SSST", "Surface Salinity Trend [psu/day]"}, + /* 195 */ {"OVHD", "Ocean vertical heat diffusivity [m^2/s]"}, + /* 196 */ {"OVSD", "Ocean vertical salt diffusivity [m^2/s]"}, + /* 197 */ {"OVMD", "Ocean vertical momementum diffusivity [m^2/s]"}, + /* 198 */ {"var198", "undefined"}, + /* 199 */ {"var199", "undefined"}, + /* 200 */ {"var200", "undefined"}, + /* 201 */ {"var201", "undefined"}, + /* 202 */ {"var202", "undefined"}, + /* 203 */ {"var203", "undefined"}, + /* 204 */ {"var204", "undefined"}, + /* 205 */ {"var205", "undefined"}, + /* 206 */ {"var206", "undefined"}, + /* 207 */ {"var207", "undefined"}, + /* 208 */ {"var208", "undefined"}, + /* 209 */ {"var209", "undefined"}, + /* 210 */ {"var210", "undefined"}, + /* 211 */ {"var211", "undefined"}, + /* 212 */ {"var212", "undefined"}, + /* 213 */ {"var213", "undefined"}, + /* 214 */ {"var214", "undefined"}, + /* 215 */ {"var215", "undefined"}, + /* 216 */ {"var216", "undefined"}, + /* 217 */ {"var217", "undefined"}, + /* 218 */ {"var218", "undefined"}, + /* 219 */ {"var219", "undefined"}, + /* 220 */ {"var220", "undefined"}, + /* 221 */ {"var221", "undefined"}, + /* 222 */ {"var222", "undefined"}, + /* 223 */ {"var223", "undefined"}, + /* 224 */ {"var224", "undefined"}, + /* 225 */ {"var225", "undefined"}, + /* 226 */ {"var226", "undefined"}, + /* 227 */ {"var227", "undefined"}, + /* 228 */ {"var228", "undefined"}, + /* 229 */ {"var229", "undefined"}, + /* 230 */ {"var230", "undefined"}, + /* 231 */ {"var231", "undefined"}, + /* 232 */ {"var232", "undefined"}, + /* 233 */ {"var233", "undefined"}, + /* 234 */ {"var234", "undefined"}, + /* 235 */ {"var235", "undefined"}, + /* 236 */ {"var236", "undefined"}, + /* 237 */ {"var237", "undefined"}, + /* 238 */ {"var238", "undefined"}, + /* 239 */ {"var239", "undefined"}, + /* 240 */ {"var240", "undefined"}, + /* 241 */ {"var241", "undefined"}, + /* 242 */ {"var242", "undefined"}, + /* 243 */ {"var243", "undefined"}, + /* 244 */ {"var244", "undefined"}, + /* 245 */ {"var245", "undefined"}, + /* 246 */ {"var246", "undefined"}, + /* 247 */ {"var247", "undefined"}, + /* 248 */ {"var248", "undefined"}, + /* 249 */ {"var249", "undefined"}, + /* 250 */ {"var250", "undefined"}, + /* 251 */ {"var251", "undefined"}, + /* 252 */ {"var252", "undefined"}, + /* 253 */ {"var253", "undefined"}, + /* 254 */ {"RERRVAR", "Relative Error Variance [pure number]"}, + /* 255 */ {"var255", "undefined"}, }; const struct ParmTable parm_table_ecmwf_128[256] = { - /* 0 */ {"var0", "undefined"}, - /* 1 */ {"STRF", "Stream function [m**2 s**-1]"}, - /* 2 */ {"VPOT", "Velocity potential [m**2 s**-1]"}, - /* 3 */ {"PT", "Potential temperature [K]"}, - /* 4 */ {"EQPT", "Equivalent potential temperature [K]"}, - /* 5 */ {"SEPT", "Saturated equivalent potential temperature [K]"}, - /* 6 */ {"SSFR", "Soil sand fraction [(0 - 1)]"}, - /* 7 */ {"SCFR", "Soil clay fraction [(0 - 1)]"}, - /* 8 */ {"SRO", "Surface runoff [m]"}, - /* 9 */ {"SSRO", "Sub-surface runoff [m]"}, - /* 10 */ {"WIND", "Wind speed [m s**-1]"}, - /* 11 */ {"UDVW", "U component of divergent wind [m s**-1]"}, - /* 12 */ {"VDVW", "V component of divergent wind [m s**-1]"}, - /* 13 */ {"URTW", "U component of rotational wind [m s**-1]"}, - /* 14 */ {"VRTW", "V component of rotational wind [m s**-1]"}, - /* 15 */ {"ALUVP", "UV visible albedo for direct radiation [(0 - 1)]"}, - /* 16 */ {"ALUVD", "UV visible albedo for diffuse radiation [(0 - 1)]"}, - /* 17 */ {"ALNIP", "Near IR albedo for direct radiation [(0 - 1)]"}, - /* 18 */ {"ALNID", "Near IR albedo for diffuse radiation [(0 - 1)]"}, - /* 19 */ {"UVCS", "Clear sky surface UV [W m**-2 s]"}, - /* 20 */ {"PARCS", "Clear sky surface PAR [W m**-2 s]"}, - /* 21 */ {"UCTP", "Unbalanced component of temperature [K]"}, - /* 22 */ {"UCLN", "Unbalanced component of logarithm of surface pressure []"}, - /* 23 */ {"UCDV", "Unbalanced component of divergence [s**-1]"}, - /* 24 */ {"var24", "Reserved for future unbalanced components []"}, - /* 25 */ {"var25", "Reserved for future unbalanced components []"}, - /* 26 */ {"CL", "Lake cover [(0 - 1)]"}, - /* 27 */ {"CVL", "Low vegetation cover [(0 - 1)]"}, - /* 28 */ {"CVH", "High vegetation cover [(0 - 1)]"}, - /* 29 */ {"TVL", "Type of low vegetation []"}, - /* 30 */ {"TVH", "Type of high vegetation []"}, - /* 31 */ {"CI", "Sea-ice cover [(0 - 1)]"}, - /* 32 */ {"ASN", "Snow albedo [(0 - 1)]"}, - /* 33 */ {"RSN", "Snow density [kg m**-3]"}, - /* 34 */ {"SSTK", "Sea surface temperature [K]"}, - /* 35 */ {"ISTL1", "Ice surface temperature layer 1 [K]"}, - /* 36 */ {"ISTL2", "Ice surface temperature layer 2 [K]"}, - /* 37 */ {"ISTL3", "Ice surface temperature layer 3 [K]"}, - /* 38 */ {"ISTL4", "Ice surface temperature layer 4 [K]"}, - /* 39 */ {"SWVL1", "Volumetric soil water layer 1 [m**3 m**-3]"}, - /* 40 */ {"SWVL2", "Volumetric soil water layer 2 [m**3 m**-3]"}, - /* 41 */ {"SWVL3", "Volumetric soil water layer 3 [m**3 m**-3]"}, - /* 42 */ {"SWVL4", "Volumetric soil water layer 4 [m**3 m**-3]"}, - /* 43 */ {"SLT", "Soil type []"}, - /* 44 */ {"ES", "Snow evaporation [m of water]"}, - /* 45 */ {"SMLT", "Snowmelt [m of water]"}, - /* 46 */ {"SDUR", "Solar duration [s]"}, - /* 47 */ {"DSRP", "Direct solar radiation [w m**-2]"}, - /* 48 */ {"MAGSS", "Magnitude of surface stress [N m**-2 s]"}, - /* 49 */ {"10FG", "10 metre wind gust [m s**-1]"}, - /* 50 */ {"LSPF", "Large-scale precipitation fraction [s]"}, - /* 51 */ {"MX2T24", "Maximum temperature at 2 metres since last 24 hours [K]"}, - /* 52 */ {"MN2T24", "Minimum temperature at 2 metres since last 24 hours [K]"}, - /* 53 */ {"MONT", "Montgomery potential [m**2 s**-2]"}, - /* 54 */ {"PRES", "Pressure [Pa]"}, - /* 55 */ {"MEAN2T24", "Mean temperature at 2 metres since last 24 hours [K]"}, - /* 56 */ {"MN2D24", "Mean 2 metre dewpoint temperature in past 24 hours [K]"}, - /* 57 */ {"UVB", "Downward UV radiation at the surface [w m**-2 s]"}, - /* 58 */ {"PAR", "Photosynthetically active radiation at the surface [w m**-2 s]"}, - /* 59 */ {"CAPE", "Convective available potential energy [J kg**-1]"}, - /* 60 */ {"PV", "Potential vorticity [K m**2 kg**-1 s**-1]"}, - /* 61 */ {"var61", "undefined"}, - /* 62 */ {"OBCT", "Observation count []"}, - /* 63 */ {"var63", "Start time for skin temperature difference [s]"}, - /* 64 */ {"var64", "Finish time for skin temperature difference [s]"}, - /* 65 */ {"var65", "Skin temperature difference [K]"}, - /* 66 */ {"var66", "Leaf area index, low vegetation [m**2 / m**2]"}, - /* 67 */ {"var67", "Leaf area index, high vegetation [m**2 / m**2]"}, - /* 68 */ {"var68", "Minimum stomatal resistance, low vegetation [s m**-1]"}, - /* 69 */ {"var69", "Minimum stomatal resistance, high vegetation [s m**-1]"}, - /* 70 */ {"var70", "Biome cover, low vegetation [(0 - 1)]"}, - /* 71 */ {"var71", "Biome cover, high vegetation [(0 - 1)]"}, - /* 72 */ {"ISSRD", "Instantaneous surface solar radiation downwards [w m**-2]"}, - /* 73 */ {"ISTRD", "Instantaneous surface thermal radiation downwards [w m**-2]"}, - /* 74 */ {"SDFOR", "Standard deviation of filtered subgrid orography [m]"}, - /* 75 */ {"CRWC", "Cloud rain water content [kg kg**-1]"}, - /* 76 */ {"CSWC", "Cloud snow water content [kg kg**-1]"}, - /* 77 */ {"ETADOT", "Eta-coordinate vertical velocity [s**-1]"}, - /* 78 */ {"TCLW", "Total column liquid water [kg m**-2]"}, - /* 79 */ {"TCIW", "Total column ice water [kg m**-2]"}, - /* 80 */ {"var80", "Experimental product []"}, - /* 81 */ {"var81", "Experimental product []"}, - /* 82 */ {"var82", "Experimental product []"}, - /* 83 */ {"var83", "Experimental product []"}, - /* 84 */ {"var84", "Experimental product []"}, - /* 85 */ {"var85", "Experimental product []"}, - /* 86 */ {"var86", "Experimental product []"}, - /* 87 */ {"var87", "Experimental product []"}, - /* 88 */ {"var88", "Experimental product []"}, - /* 89 */ {"var89", "Experimental product []"}, - /* 90 */ {"var90", "Experimental product []"}, - /* 91 */ {"var91", "Experimental product []"}, - /* 92 */ {"var92", "Experimental product []"}, - /* 93 */ {"var93", "Experimental product []"}, - /* 94 */ {"var94", "Experimental product []"}, - /* 95 */ {"var95", "Experimental product []"}, - /* 96 */ {"var96", "Experimental product []"}, - /* 97 */ {"var97", "Experimental product []"}, - /* 98 */ {"var98", "Experimental product []"}, - /* 99 */ {"var99", "Experimental product []"}, - /* 100 */ {"var100", "Experimental product []"}, - /* 101 */ {"var101", "Experimental product []"}, - /* 102 */ {"var102", "Experimental product []"}, - /* 103 */ {"var103", "Experimental product []"}, - /* 104 */ {"var104", "Experimental product []"}, - /* 105 */ {"var105", "Experimental product []"}, - /* 106 */ {"var106", "Experimental product []"}, - /* 107 */ {"var107", "Experimental product []"}, - /* 108 */ {"var108", "Experimental product []"}, - /* 109 */ {"var109", "Experimental product []"}, - /* 110 */ {"var110", "Experimental product []"}, - /* 111 */ {"var111", "Experimental product []"}, - /* 112 */ {"var112", "Experimental product []"}, - /* 113 */ {"var113", "Experimental product []"}, - /* 114 */ {"var114", "Experimental product []"}, - /* 115 */ {"var115", "Experimental product []"}, - /* 116 */ {"var116", "Experimental product []"}, - /* 117 */ {"var117", "Experimental product []"}, - /* 118 */ {"var118", "Experimental product []"}, - /* 119 */ {"var119", "Experimental product []"}, - /* 120 */ {"var120", "Experimental product []"}, - /* 121 */ {"MX2T6", "Maximum temperature at 2 metres since last 6 hours [K]"}, - /* 122 */ {"MN2T6", "Minimum temperature at 2 metres since last 6 hours [K]"}, - /* 123 */ {"10FG6", "10 metre wind gust in the past 6 hours [m s**-1]"}, - /* 124 */ {"EMIS", "Surface emissivity [dimensionless]"}, - /* 125 */ {"var125", "Vertically integrated total energy [J m**-2]"}, - /* 126 */ {"var126", "Generic parameter for sensitive area prediction [Various]"}, - /* 127 */ {"AT", "Atmospheric tide []"}, - /* 128 */ {"BV", "Budget values []"}, - /* 129 */ {"Z", "Geopotential [m**2 s**-2]"}, - /* 130 */ {"T", "Temperature [K]"}, - /* 131 */ {"U", "U velocity [m s**-1]"}, - /* 132 */ {"V", "V velocity [m s**-1]"}, - /* 133 */ {"Q", "Specific humidity [kg kg**-1]"}, - /* 134 */ {"SP", "Surface pressure [Pa]"}, - /* 135 */ {"W", "Vertical velocity [Pa s**-1]"}, - /* 136 */ {"TCW", "Total column water [kg m**-2]"}, - /* 137 */ {"TCWV", "Total column water vapour [kg m**-2]"}, - /* 138 */ {"VO", "Vorticity (relative) [s**-1]"}, - /* 139 */ {"STL1", "Soil temperature level 1 [K]"}, - /* 140 */ {"SWL1", "Soil wetness level 1 [m of water]"}, - /* 141 */ {"SD", "Snow depth [m of water equivalent]"}, - /* 142 */ {"LSP", "Stratiform precipitation (Large-scale precipitation) [m]"}, - /* 143 */ {"CP", "Convective precipitation [m]"}, - /* 144 */ {"SF", "Snowfall [m of water equivalent]"}, - /* 145 */ {"BLD", "Boundary layer dissipation [W m**-2 s]"}, - /* 146 */ {"SSHF", "Surface sensible heat flux [W m**-2 s]"}, - /* 147 */ {"SLHF", "Surface latent heat flux [W m**-2 s]"}, - /* 148 */ {"CHNK", "Charnock []"}, - /* 149 */ {"SNR", "Surface net radiation [W m**-2 s]"}, - /* 150 */ {"TNR", "Top net radiation []"}, - /* 151 */ {"MSL", "Mean sea level pressure [Pa]"}, - /* 152 */ {"LNSP", "Logarithm of surface pressure []"}, - /* 153 */ {"SWHR", "Short-wave heating rate [K]"}, - /* 154 */ {"LWHR", "Long-wave heating rate [K]"}, - /* 155 */ {"D", "Divergence [s**-1]"}, - /* 156 */ {"GH", "Height [gpm]"}, - /* 157 */ {"R", "Relative humidity [%]"}, - /* 158 */ {"TSP", "Tendency of surface pressure [Pa s**-1]"}, - /* 159 */ {"BLH", "Boundary layer height [m]"}, - /* 160 */ {"SDOR", "Standard deviation of orography []"}, - /* 161 */ {"ISOR", "Anisotropy of sub-gridscale orography []"}, - /* 162 */ {"ANOR", "Angle of sub-gridscale orography [rad]"}, - /* 163 */ {"SLOR", "Slope of sub-gridscale orography []"}, - /* 164 */ {"TCC", "Total cloud cover [(0 - 1)]"}, - /* 165 */ {"10U", "10 metre U wind component [m s**-1]"}, - /* 166 */ {"10V", "10 metre V wind component [m s**-1]"}, - /* 167 */ {"2T", "2 metre temperature [K]"}, - /* 168 */ {"2D", "2 metre dewpoint temperature [K]"}, - /* 169 */ {"SSRD", "Surface solar radiation downwards [W m**-2 s]"}, - /* 170 */ {"STL2", "Soil temperature level 2 [K]"}, - /* 171 */ {"SWL2", "Soil wetness level 2 [m of water]"}, - /* 172 */ {"LSM", "Land-sea mask [(0 - 1)]"}, - /* 173 */ {"SR", "Surface roughness [m]"}, - /* 174 */ {"AL", "Albedo [(0 - 1)]"}, - /* 175 */ {"STRD", "Surface thermal radiation downwards [W m**-2 s]"}, - /* 176 */ {"SSR", "Surface solar radiation [W m**-2 s]"}, - /* 177 */ {"STR", "Surface thermal radiation [W m**-2 s]"}, - /* 178 */ {"TSR", "Top solar radiation [W m**-2 s]"}, - /* 179 */ {"TTR", "Top thermal radiation [W m**-2 s]"}, - /* 180 */ {"EWSS", "East-West surface stress [N m**-2 s]"}, - /* 181 */ {"NSSS", "North-South surface stress [N m**-2 s]"}, - /* 182 */ {"E", "Evaporation [m of water]"}, - /* 183 */ {"STL3", "Soil temperature level 3 [K]"}, - /* 184 */ {"SWL3", "Soil wetness level 3 [m of water]"}, - /* 185 */ {"CCC", "Convective cloud cover [(0 - 1)]"}, - /* 186 */ {"LCC", "Low cloud cover [(0 - 1)]"}, - /* 187 */ {"MCC", "Medium cloud cover [(0 - 1)]"}, - /* 188 */ {"HCC", "High cloud cover [(0 - 1)]"}, - /* 189 */ {"SUND", "Sunshine duration [s]"}, - /* 190 */ {"EWOV", "East-West component of sub-gridscale orographic variance [m**2]"}, - /* 191 */ {"NSOV", "North-South component of sub-gridscale orographic variance [m**2]"}, - /* 192 */ {"NWOV", "North-West/South-East component of sub-gridscale orographic variance [m**2]"}, - /* 193 */ {"NEOV", "North-East/South-West component of sub-gridscale orographic variance [m**2]"}, - /* 194 */ {"BTMP", "Brightness temperature [K]"}, - /* 195 */ {"LGWS", "Latitudinal component of gravity wave stress [N m**-2 s]"}, - /* 196 */ {"MGWS", "Meridional component of gravity wave stress [N m**-2 s]"}, - /* 197 */ {"GWD", "Gravity wave dissipation [W m**-2 s]"}, - /* 198 */ {"SRC", "Skin reservoir content [m of water]"}, - /* 199 */ {"VEG", "Vegetation fraction [(0 - 1)]"}, - /* 200 */ {"VSO", "Variance of sub-gridscale orography [m**2]"}, - /* 201 */ {"MX2T", "Maximum temperature at 2 metres since previous post-processing [K]"}, - /* 202 */ {"MN2T", "Minimum temperature at 2 metres since previous post-processing [K]"}, - /* 203 */ {"O3", "Ozone mass mixing ratio [kg kg**-1]"}, - /* 204 */ {"PAW", "Precipitation analysis weights []"}, - /* 205 */ {"RO", "Runoff [m]"}, - /* 206 */ {"TCO3", "Total column ozone [kg m**-2]"}, - /* 207 */ {"10SI", "10 metre wind speed [m s**-1]"}, - /* 208 */ {"TSRC", "Top net solar radiation, clear sky [W m**-2 s]"}, - /* 209 */ {"TTRC", "Top net thermal radiation, clear sky [W m**-2 s]"}, - /* 210 */ {"SSRC", "Surface net solar radiation, clear sky [W m**-2 s]"}, - /* 211 */ {"STRC", "Surface net thermal radiation, clear sky [W m**-2 s]"}, - /* 212 */ {"TISR", "TOA incident solar radiation [W m**-2 s]"}, - /* 213 */ {"VIMD", "Vertically integrated moisture divergence [kg m**-2]"}, - /* 214 */ {"DHR", "Diabatic heating by radiation [K]"}, - /* 215 */ {"DHVD", "Diabatic heating by vertical diffusion [K]"}, - /* 216 */ {"DHCC", "Diabatic heating by cumulus convection [K]"}, - /* 217 */ {"DHLC", "Diabatic heating large-scale condensation [K]"}, - /* 218 */ {"VDZW", "Vertical diffusion of zonal wind [m s**-1]"}, - /* 219 */ {"VDMW", "Vertical diffusion of meridional wind [m s**-1]"}, - /* 220 */ {"EWGD", "East-West gravity wave drag tendency [m s**-1]"}, - /* 221 */ {"NSGD", "North-South gravity wave drag tendency [m s**-1]"}, - /* 222 */ {"CTZW", "Convective tendency of zonal wind [m s**-1]"}, - /* 223 */ {"CTMW", "Convective tendency of meridional wind [m s**-1]"}, - /* 224 */ {"VDH", "Vertical diffusion of humidity [kg kg**-1]"}, - /* 225 */ {"HTCC", "Humidity tendency by cumulus convection [kg kg**-1]"}, - /* 226 */ {"HTLC", "Humidity tendency by large-scale condensation [kg kg**-1]"}, - /* 227 */ {"CRNH", "Change from removal of negative humidity [kg kg**-1]"}, - /* 228 */ {"TP", "Total precipitation [m]"}, - /* 229 */ {"IEWS", "Instantaneous X surface stress [N m**-2]"}, - /* 230 */ {"INSS", "Instantaneous Y surface stress [N m**-2]"}, - /* 231 */ {"ISHF", "Instantaneous surface heat flux [W m**-2]"}, - /* 232 */ {"IE", "Instantaneous moisture flux [kg m**-2 s**-1]"}, - /* 233 */ {"ASQ", "Apparent surface humidity [kg kg**-1]"}, - /* 234 */ {"LSRH", "Logarithm of surface roughness length for heat []"}, - /* 235 */ {"SKT", "Skin temperature [K]"}, - /* 236 */ {"STL4", "Soil temperature level 4 [K]"}, - /* 237 */ {"SWL4", "Soil wetness level 4 [m]"}, - /* 238 */ {"TSN", "Temperature of snow layer [K]"}, - /* 239 */ {"CSF", "Convective snowfall [m of water equivalent]"}, - /* 240 */ {"LSF", "Large-scale snowfall [m of water equivalent]"}, - /* 241 */ {"ACF", "Accumulated cloud fraction tendency [(-1 to 1)]"}, - /* 242 */ {"ALW", "Accumulated liquid water tendency [(-1 to 1)]"}, - /* 243 */ {"FAL", "Forecast albedo [(0 - 1)]"}, - /* 244 */ {"FSR", "Forecast surface roughness [m]"}, - /* 245 */ {"FLSR", "Forecast logarithm of surface roughness for heat []"}, - /* 246 */ {"CLWC", "Cloud liquid water content [kg kg**-1]"}, - /* 247 */ {"CIWC", "Cloud ice water content [kg kg**-1]"}, - /* 248 */ {"CC", "Cloud cover [(0 - 1)]"}, - /* 249 */ {"AIW", "Accumulated ice water tendency [(-1 to 1)]"}, - /* 250 */ {"ICE", "Ice age [(0 - 1)]"}, - /* 251 */ {"ATTE", "Adiabatic tendency of temperature [K]"}, - /* 252 */ {"ATHE", "Adiabatic tendency of humidity [kg kg**-1]"}, - /* 253 */ {"ATZE", "Adiabatic tendency of zonal wind [m s**-1]"}, - /* 254 */ {"ATMW", "Adiabatic tendency of meridional wind [m s**-1]"}, - /* 255 */ {"var255", "Indicates a missing value []"}, + /* 0 */ {"var0", "undefined"}, + /* 1 */ {"STRF", "Stream function [m**2 s**-1]"}, + /* 2 */ {"VPOT", "Velocity potential [m**2 s**-1]"}, + /* 3 */ {"PT", "Potential temperature [K]"}, + /* 4 */ {"EQPT", "Equivalent potential temperature [K]"}, + /* 5 */ {"SEPT", "Saturated equivalent potential temperature [K]"}, + /* 6 */ {"SSFR", "Soil sand fraction [(0 - 1)]"}, + /* 7 */ {"SCFR", "Soil clay fraction [(0 - 1)]"}, + /* 8 */ {"SRO", "Surface runoff [m]"}, + /* 9 */ {"SSRO", "Sub-surface runoff [m]"}, + /* 10 */ {"WIND", "Wind speed [m s**-1]"}, + /* 11 */ {"UDVW", "U component of divergent wind [m s**-1]"}, + /* 12 */ {"VDVW", "V component of divergent wind [m s**-1]"}, + /* 13 */ {"URTW", "U component of rotational wind [m s**-1]"}, + /* 14 */ {"VRTW", "V component of rotational wind [m s**-1]"}, + /* 15 */ {"ALUVP", "UV visible albedo for direct radiation [(0 - 1)]"}, + /* 16 */ {"ALUVD", "UV visible albedo for diffuse radiation [(0 - 1)]"}, + /* 17 */ {"ALNIP", "Near IR albedo for direct radiation [(0 - 1)]"}, + /* 18 */ {"ALNID", "Near IR albedo for diffuse radiation [(0 - 1)]"}, + /* 19 */ {"UVCS", "Clear sky surface UV [W m**-2 s]"}, + /* 20 */ {"PARCS", "Clear sky surface PAR [W m**-2 s]"}, + /* 21 */ {"UCTP", "Unbalanced component of temperature [K]"}, + /* 22 */ {"UCLN", "Unbalanced component of logarithm of surface pressure []"}, + /* 23 */ {"UCDV", "Unbalanced component of divergence [s**-1]"}, + /* 24 */ {"var24", "Reserved for future unbalanced components []"}, + /* 25 */ {"var25", "Reserved for future unbalanced components []"}, + /* 26 */ {"CL", "Lake cover [(0 - 1)]"}, + /* 27 */ {"CVL", "Low vegetation cover [(0 - 1)]"}, + /* 28 */ {"CVH", "High vegetation cover [(0 - 1)]"}, + /* 29 */ {"TVL", "Type of low vegetation []"}, + /* 30 */ {"TVH", "Type of high vegetation []"}, + /* 31 */ {"CI", "Sea-ice cover [(0 - 1)]"}, + /* 32 */ {"ASN", "Snow albedo [(0 - 1)]"}, + /* 33 */ {"RSN", "Snow density [kg m**-3]"}, + /* 34 */ {"SSTK", "Sea surface temperature [K]"}, + /* 35 */ {"ISTL1", "Ice surface temperature layer 1 [K]"}, + /* 36 */ {"ISTL2", "Ice surface temperature layer 2 [K]"}, + /* 37 */ {"ISTL3", "Ice surface temperature layer 3 [K]"}, + /* 38 */ {"ISTL4", "Ice surface temperature layer 4 [K]"}, + /* 39 */ {"SWVL1", "Volumetric soil water layer 1 [m**3 m**-3]"}, + /* 40 */ {"SWVL2", "Volumetric soil water layer 2 [m**3 m**-3]"}, + /* 41 */ {"SWVL3", "Volumetric soil water layer 3 [m**3 m**-3]"}, + /* 42 */ {"SWVL4", "Volumetric soil water layer 4 [m**3 m**-3]"}, + /* 43 */ {"SLT", "Soil type []"}, + /* 44 */ {"ES", "Snow evaporation [m of water]"}, + /* 45 */ {"SMLT", "Snowmelt [m of water]"}, + /* 46 */ {"SDUR", "Solar duration [s]"}, + /* 47 */ {"DSRP", "Direct solar radiation [w m**-2]"}, + /* 48 */ {"MAGSS", "Magnitude of surface stress [N m**-2 s]"}, + /* 49 */ {"10FG", "10 metre wind gust [m s**-1]"}, + /* 50 */ {"LSPF", "Large-scale precipitation fraction [s]"}, + /* 51 */ {"MX2T24", "Maximum temperature at 2 metres since last 24 hours [K]"}, + /* 52 */ {"MN2T24", "Minimum temperature at 2 metres since last 24 hours [K]"}, + /* 53 */ {"MONT", "Montgomery potential [m**2 s**-2]"}, + /* 54 */ {"PRES", "Pressure [Pa]"}, + /* 55 */ {"MEAN2T24", "Mean temperature at 2 metres since last 24 hours [K]"}, + /* 56 */ {"MN2D24", "Mean 2 metre dewpoint temperature in past 24 hours [K]"}, + /* 57 */ {"UVB", "Downward UV radiation at the surface [w m**-2 s]"}, + /* 58 */ {"PAR", "Photosynthetically active radiation at the surface [w m**-2 s]"}, + /* 59 */ {"CAPE", "Convective available potential energy [J kg**-1]"}, + /* 60 */ {"PV", "Potential vorticity [K m**2 kg**-1 s**-1]"}, + /* 61 */ {"var61", "undefined"}, + /* 62 */ {"OBCT", "Observation count []"}, + /* 63 */ {"var63", "Start time for skin temperature difference [s]"}, + /* 64 */ {"var64", "Finish time for skin temperature difference [s]"}, + /* 65 */ {"var65", "Skin temperature difference [K]"}, + /* 66 */ {"var66", "Leaf area index, low vegetation [m**2 / m**2]"}, + /* 67 */ {"var67", "Leaf area index, high vegetation [m**2 / m**2]"}, + /* 68 */ {"var68", "Minimum stomatal resistance, low vegetation [s m**-1]"}, + /* 69 */ {"var69", "Minimum stomatal resistance, high vegetation [s m**-1]"}, + /* 70 */ {"var70", "Biome cover, low vegetation [(0 - 1)]"}, + /* 71 */ {"var71", "Biome cover, high vegetation [(0 - 1)]"}, + /* 72 */ {"ISSRD", "Instantaneous surface solar radiation downwards [w m**-2]"}, + /* 73 */ {"ISTRD", "Instantaneous surface thermal radiation downwards [w m**-2]"}, + /* 74 */ {"SDFOR", "Standard deviation of filtered subgrid orography [m]"}, + /* 75 */ {"CRWC", "Cloud rain water content [kg kg**-1]"}, + /* 76 */ {"CSWC", "Cloud snow water content [kg kg**-1]"}, + /* 77 */ {"ETADOT", "Eta-coordinate vertical velocity [s**-1]"}, + /* 78 */ {"TCLW", "Total column liquid water [kg m**-2]"}, + /* 79 */ {"TCIW", "Total column ice water [kg m**-2]"}, + /* 80 */ {"var80", "Experimental product []"}, + /* 81 */ {"var81", "Experimental product []"}, + /* 82 */ {"var82", "Experimental product []"}, + /* 83 */ {"var83", "Experimental product []"}, + /* 84 */ {"var84", "Experimental product []"}, + /* 85 */ {"var85", "Experimental product []"}, + /* 86 */ {"var86", "Experimental product []"}, + /* 87 */ {"var87", "Experimental product []"}, + /* 88 */ {"var88", "Experimental product []"}, + /* 89 */ {"var89", "Experimental product []"}, + /* 90 */ {"var90", "Experimental product []"}, + /* 91 */ {"var91", "Experimental product []"}, + /* 92 */ {"var92", "Experimental product []"}, + /* 93 */ {"var93", "Experimental product []"}, + /* 94 */ {"var94", "Experimental product []"}, + /* 95 */ {"var95", "Experimental product []"}, + /* 96 */ {"var96", "Experimental product []"}, + /* 97 */ {"var97", "Experimental product []"}, + /* 98 */ {"var98", "Experimental product []"}, + /* 99 */ {"var99", "Experimental product []"}, + /* 100 */ {"var100", "Experimental product []"}, + /* 101 */ {"var101", "Experimental product []"}, + /* 102 */ {"var102", "Experimental product []"}, + /* 103 */ {"var103", "Experimental product []"}, + /* 104 */ {"var104", "Experimental product []"}, + /* 105 */ {"var105", "Experimental product []"}, + /* 106 */ {"var106", "Experimental product []"}, + /* 107 */ {"var107", "Experimental product []"}, + /* 108 */ {"var108", "Experimental product []"}, + /* 109 */ {"var109", "Experimental product []"}, + /* 110 */ {"var110", "Experimental product []"}, + /* 111 */ {"var111", "Experimental product []"}, + /* 112 */ {"var112", "Experimental product []"}, + /* 113 */ {"var113", "Experimental product []"}, + /* 114 */ {"var114", "Experimental product []"}, + /* 115 */ {"var115", "Experimental product []"}, + /* 116 */ {"var116", "Experimental product []"}, + /* 117 */ {"var117", "Experimental product []"}, + /* 118 */ {"var118", "Experimental product []"}, + /* 119 */ {"var119", "Experimental product []"}, + /* 120 */ {"var120", "Experimental product []"}, + /* 121 */ {"MX2T6", "Maximum temperature at 2 metres since last 6 hours [K]"}, + /* 122 */ {"MN2T6", "Minimum temperature at 2 metres since last 6 hours [K]"}, + /* 123 */ {"10FG6", "10 metre wind gust in the past 6 hours [m s**-1]"}, + /* 124 */ {"EMIS", "Surface emissivity [dimensionless]"}, + /* 125 */ {"var125", "Vertically integrated total energy [J m**-2]"}, + /* 126 */ {"var126", "Generic parameter for sensitive area prediction [Various]"}, + /* 127 */ {"AT", "Atmospheric tide []"}, + /* 128 */ {"BV", "Budget values []"}, + /* 129 */ {"Z", "Geopotential [m**2 s**-2]"}, + /* 130 */ {"T", "Temperature [K]"}, + /* 131 */ {"U", "U velocity [m s**-1]"}, + /* 132 */ {"V", "V velocity [m s**-1]"}, + /* 133 */ {"Q", "Specific humidity [kg kg**-1]"}, + /* 134 */ {"SP", "Surface pressure [Pa]"}, + /* 135 */ {"W", "Vertical velocity [Pa s**-1]"}, + /* 136 */ {"TCW", "Total column water [kg m**-2]"}, + /* 137 */ {"TCWV", "Total column water vapour [kg m**-2]"}, + /* 138 */ {"VO", "Vorticity (relative) [s**-1]"}, + /* 139 */ {"STL1", "Soil temperature level 1 [K]"}, + /* 140 */ {"SWL1", "Soil wetness level 1 [m of water]"}, + /* 141 */ {"SD", "Snow depth [m of water equivalent]"}, + /* 142 */ {"LSP", "Stratiform precipitation (Large-scale precipitation) [m]"}, + /* 143 */ {"CP", "Convective precipitation [m]"}, + /* 144 */ {"SF", "Snowfall [m of water equivalent]"}, + /* 145 */ {"BLD", "Boundary layer dissipation [W m**-2 s]"}, + /* 146 */ {"SSHF", "Surface sensible heat flux [W m**-2 s]"}, + /* 147 */ {"SLHF", "Surface latent heat flux [W m**-2 s]"}, + /* 148 */ {"CHNK", "Charnock []"}, + /* 149 */ {"SNR", "Surface net radiation [W m**-2 s]"}, + /* 150 */ {"TNR", "Top net radiation []"}, + /* 151 */ {"MSL", "Mean sea level pressure [Pa]"}, + /* 152 */ {"LNSP", "Logarithm of surface pressure []"}, + /* 153 */ {"SWHR", "Short-wave heating rate [K]"}, + /* 154 */ {"LWHR", "Long-wave heating rate [K]"}, + /* 155 */ {"D", "Divergence [s**-1]"}, + /* 156 */ {"GH", "Height [gpm]"}, + /* 157 */ {"R", "Relative humidity [%]"}, + /* 158 */ {"TSP", "Tendency of surface pressure [Pa s**-1]"}, + /* 159 */ {"BLH", "Boundary layer height [m]"}, + /* 160 */ {"SDOR", "Standard deviation of orography []"}, + /* 161 */ {"ISOR", "Anisotropy of sub-gridscale orography []"}, + /* 162 */ {"ANOR", "Angle of sub-gridscale orography [rad]"}, + /* 163 */ {"SLOR", "Slope of sub-gridscale orography []"}, + /* 164 */ {"TCC", "Total cloud cover [(0 - 1)]"}, + /* 165 */ {"10U", "10 metre U wind component [m s**-1]"}, + /* 166 */ {"10V", "10 metre V wind component [m s**-1]"}, + /* 167 */ {"2T", "2 metre temperature [K]"}, + /* 168 */ {"2D", "2 metre dewpoint temperature [K]"}, + /* 169 */ {"SSRD", "Surface solar radiation downwards [W m**-2 s]"}, + /* 170 */ {"STL2", "Soil temperature level 2 [K]"}, + /* 171 */ {"SWL2", "Soil wetness level 2 [m of water]"}, + /* 172 */ {"LSM", "Land-sea mask [(0 - 1)]"}, + /* 173 */ {"SR", "Surface roughness [m]"}, + /* 174 */ {"AL", "Albedo [(0 - 1)]"}, + /* 175 */ {"STRD", "Surface thermal radiation downwards [W m**-2 s]"}, + /* 176 */ {"SSR", "Surface solar radiation [W m**-2 s]"}, + /* 177 */ {"STR", "Surface thermal radiation [W m**-2 s]"}, + /* 178 */ {"TSR", "Top solar radiation [W m**-2 s]"}, + /* 179 */ {"TTR", "Top thermal radiation [W m**-2 s]"}, + /* 180 */ {"EWSS", "East-West surface stress [N m**-2 s]"}, + /* 181 */ {"NSSS", "North-South surface stress [N m**-2 s]"}, + /* 182 */ {"E", "Evaporation [m of water]"}, + /* 183 */ {"STL3", "Soil temperature level 3 [K]"}, + /* 184 */ {"SWL3", "Soil wetness level 3 [m of water]"}, + /* 185 */ {"CCC", "Convective cloud cover [(0 - 1)]"}, + /* 186 */ {"LCC", "Low cloud cover [(0 - 1)]"}, + /* 187 */ {"MCC", "Medium cloud cover [(0 - 1)]"}, + /* 188 */ {"HCC", "High cloud cover [(0 - 1)]"}, + /* 189 */ {"SUND", "Sunshine duration [s]"}, + /* 190 */ {"EWOV", "East-West component of sub-gridscale orographic variance [m**2]"}, + /* 191 */ {"NSOV", "North-South component of sub-gridscale orographic variance [m**2]"}, + /* 192 */ {"NWOV", "North-West/South-East component of sub-gridscale orographic variance [m**2]"}, + /* 193 */ {"NEOV", "North-East/South-West component of sub-gridscale orographic variance [m**2]"}, + /* 194 */ {"BTMP", "Brightness temperature [K]"}, + /* 195 */ {"LGWS", "Latitudinal component of gravity wave stress [N m**-2 s]"}, + /* 196 */ {"MGWS", "Meridional component of gravity wave stress [N m**-2 s]"}, + /* 197 */ {"GWD", "Gravity wave dissipation [W m**-2 s]"}, + /* 198 */ {"SRC", "Skin reservoir content [m of water]"}, + /* 199 */ {"VEG", "Vegetation fraction [(0 - 1)]"}, + /* 200 */ {"VSO", "Variance of sub-gridscale orography [m**2]"}, + /* 201 */ {"MX2T", "Maximum temperature at 2 metres since previous post-processing [K]"}, + /* 202 */ {"MN2T", "Minimum temperature at 2 metres since previous post-processing [K]"}, + /* 203 */ {"O3", "Ozone mass mixing ratio [kg kg**-1]"}, + /* 204 */ {"PAW", "Precipitation analysis weights []"}, + /* 205 */ {"RO", "Runoff [m]"}, + /* 206 */ {"TCO3", "Total column ozone [kg m**-2]"}, + /* 207 */ {"10SI", "10 metre wind speed [m s**-1]"}, + /* 208 */ {"TSRC", "Top net solar radiation, clear sky [W m**-2 s]"}, + /* 209 */ {"TTRC", "Top net thermal radiation, clear sky [W m**-2 s]"}, + /* 210 */ {"SSRC", "Surface net solar radiation, clear sky [W m**-2 s]"}, + /* 211 */ {"STRC", "Surface net thermal radiation, clear sky [W m**-2 s]"}, + /* 212 */ {"TISR", "TOA incident solar radiation [W m**-2 s]"}, + /* 213 */ {"VIMD", "Vertically integrated moisture divergence [kg m**-2]"}, + /* 214 */ {"DHR", "Diabatic heating by radiation [K]"}, + /* 215 */ {"DHVD", "Diabatic heating by vertical diffusion [K]"}, + /* 216 */ {"DHCC", "Diabatic heating by cumulus convection [K]"}, + /* 217 */ {"DHLC", "Diabatic heating large-scale condensation [K]"}, + /* 218 */ {"VDZW", "Vertical diffusion of zonal wind [m s**-1]"}, + /* 219 */ {"VDMW", "Vertical diffusion of meridional wind [m s**-1]"}, + /* 220 */ {"EWGD", "East-West gravity wave drag tendency [m s**-1]"}, + /* 221 */ {"NSGD", "North-South gravity wave drag tendency [m s**-1]"}, + /* 222 */ {"CTZW", "Convective tendency of zonal wind [m s**-1]"}, + /* 223 */ {"CTMW", "Convective tendency of meridional wind [m s**-1]"}, + /* 224 */ {"VDH", "Vertical diffusion of humidity [kg kg**-1]"}, + /* 225 */ {"HTCC", "Humidity tendency by cumulus convection [kg kg**-1]"}, + /* 226 */ {"HTLC", "Humidity tendency by large-scale condensation [kg kg**-1]"}, + /* 227 */ {"CRNH", "Change from removal of negative humidity [kg kg**-1]"}, + /* 228 */ {"TP", "Total precipitation [m]"}, + /* 229 */ {"IEWS", "Instantaneous X surface stress [N m**-2]"}, + /* 230 */ {"INSS", "Instantaneous Y surface stress [N m**-2]"}, + /* 231 */ {"ISHF", "Instantaneous surface heat flux [W m**-2]"}, + /* 232 */ {"IE", "Instantaneous moisture flux [kg m**-2 s**-1]"}, + /* 233 */ {"ASQ", "Apparent surface humidity [kg kg**-1]"}, + /* 234 */ {"LSRH", "Logarithm of surface roughness length for heat []"}, + /* 235 */ {"SKT", "Skin temperature [K]"}, + /* 236 */ {"STL4", "Soil temperature level 4 [K]"}, + /* 237 */ {"SWL4", "Soil wetness level 4 [m]"}, + /* 238 */ {"TSN", "Temperature of snow layer [K]"}, + /* 239 */ {"CSF", "Convective snowfall [m of water equivalent]"}, + /* 240 */ {"LSF", "Large-scale snowfall [m of water equivalent]"}, + /* 241 */ {"ACF", "Accumulated cloud fraction tendency [(-1 to 1)]"}, + /* 242 */ {"ALW", "Accumulated liquid water tendency [(-1 to 1)]"}, + /* 243 */ {"FAL", "Forecast albedo [(0 - 1)]"}, + /* 244 */ {"FSR", "Forecast surface roughness [m]"}, + /* 245 */ {"FLSR", "Forecast logarithm of surface roughness for heat []"}, + /* 246 */ {"CLWC", "Cloud liquid water content [kg kg**-1]"}, + /* 247 */ {"CIWC", "Cloud ice water content [kg kg**-1]"}, + /* 248 */ {"CC", "Cloud cover [(0 - 1)]"}, + /* 249 */ {"AIW", "Accumulated ice water tendency [(-1 to 1)]"}, + /* 250 */ {"ICE", "Ice age [(0 - 1)]"}, + /* 251 */ {"ATTE", "Adiabatic tendency of temperature [K]"}, + /* 252 */ {"ATHE", "Adiabatic tendency of humidity [kg kg**-1]"}, + /* 253 */ {"ATZE", "Adiabatic tendency of zonal wind [m s**-1]"}, + /* 254 */ {"ATMW", "Adiabatic tendency of meridional wind [m s**-1]"}, + /* 255 */ {"var255", "Indicates a missing value []"}, }; const struct ParmTable parm_table_ecmwf_129[256] = { - /* 0 */ {"var0", "undefined"}, - /* 1 */ {"STRF", "Stream function [m**2 s**-1]"}, - /* 2 */ {"VPOT", "Velocity potential [m**2 s**-1]"}, - /* 3 */ {"PT", "Potential temperature [K]"}, - /* 4 */ {"EQPT", "Equivalent potential temperature [K]"}, - /* 5 */ {"SEPT", "Saturated equivalent potential temperature [K]"}, - /* 6 */ {"var6", "undefined"}, - /* 7 */ {"var7", "undefined"}, - /* 8 */ {"var8", "undefined"}, - /* 9 */ {"var9", "undefined"}, - /* 10 */ {"var10", "undefined"}, - /* 11 */ {"UDVW", "U component of divergent wind [m s**-1]"}, - /* 12 */ {"VDVW", "V component of divergent wind [m s**-1]"}, - /* 13 */ {"URTW", "U component of rotational wind [m s**-1]"}, - /* 14 */ {"VRTW", "V component of rotational wind [m s**-1]"}, - /* 15 */ {"var15", "undefined"}, - /* 16 */ {"var16", "undefined"}, - /* 17 */ {"var17", "undefined"}, - /* 18 */ {"var18", "undefined"}, - /* 19 */ {"var19", "undefined"}, - /* 20 */ {"var20", "undefined"}, - /* 21 */ {"UCTP", "Unbalanced component of temperature [K]"}, - /* 22 */ {"UCLN", "Unbalanced component of logarithm of surface pressure []"}, - /* 23 */ {"UCDV", "Unbalanced component of divergence [s**-1]"}, - /* 24 */ {"var24", "Reserved for future unbalanced components []"}, - /* 25 */ {"var25", "Reserved for future unbalanced components []"}, - /* 26 */ {"CL", "Lake cover [(0 - 1)]"}, - /* 27 */ {"CVL", "Low vegetation cover [(0 - 1)]"}, - /* 28 */ {"CVH", "High vegetation cover [(0 - 1)]"}, - /* 29 */ {"TVL", "Type of low vegetation []"}, - /* 30 */ {"TVH", "Type of high vegetation []"}, - /* 31 */ {"CI", "Sea-ice cover [(0 - 1)]"}, - /* 32 */ {"ASN", "Snow albedo [(0 - 1)]"}, - /* 33 */ {"RSN", "Snow density [kg m**-3]"}, - /* 34 */ {"SSTK", "Sea surface temperature [K]"}, - /* 35 */ {"ISTL1", "Ice surface temperature layer 1 [K]"}, - /* 36 */ {"ISTL2", "Ice surface temperature layer 2 [K]"}, - /* 37 */ {"ISTL3", "Ice surface temperature layer 3 [K]"}, - /* 38 */ {"ISTL4", "Ice surface temperature layer 4 [K]"}, - /* 39 */ {"SWVL1", "Volumetric soil water layer 1 [m**3 m**-3]"}, - /* 40 */ {"SWVL2", "Volumetric soil water layer 2 [m**3 m**-3]"}, - /* 41 */ {"SWVL3", "Volumetric soil water layer 3 [m**3 m**-3]"}, - /* 42 */ {"SWVL4", "Volumetric soil water layer 4 [m**3 m**-3]"}, - /* 43 */ {"SLT", "Soil type []"}, - /* 44 */ {"ES", "Snow evaporation [m of water]"}, - /* 45 */ {"SMLT", "Snowmelt [m of water]"}, - /* 46 */ {"SDUR", "Solar duration [s]"}, - /* 47 */ {"DSRP", "Direct solar radiation [w m**-2]"}, - /* 48 */ {"MAGSS", "Magnitude of surface stress [N m**-2 s]"}, - /* 49 */ {"10FG", "10 metre wind gust [m s**-1]"}, - /* 50 */ {"LSPF", "Large-scale precipitation fraction [s]"}, - /* 51 */ {"MX2T24", "Maximum 2 metre temperature [K]"}, - /* 52 */ {"MN2T24", "Minimum 2 metre temperature [K]"}, - /* 53 */ {"MONT", "Montgomery potential [m**2 s**-2]"}, - /* 54 */ {"PRES", "Pressure [Pa]"}, - /* 55 */ {"MEAN2T24", "Mean 2 metre temperature in past 24 hours [K]"}, - /* 56 */ {"MN2D24", "Mean 2 metre dewpoint temperature in past 24 hours [K]"}, - /* 57 */ {"UVB", "Downward UV radiation at the surface [w m**-2 s]"}, - /* 58 */ {"PAR", "Photosynthetically active radiation at the surface [w m**-2 s]"}, - /* 59 */ {"CAPE", "Convective available potential energy [J kg**-1]"}, - /* 60 */ {"PV", "Potential vorticity [K m**2 kg**-1 s**-1]"}, - /* 61 */ {"TPO", "Total precipitation from observations [Millimetres*100 + number of stations]"}, - /* 62 */ {"OBCT", "Observation count []"}, - /* 63 */ {"var63", "Start time for skin temperature difference [s]"}, - /* 64 */ {"var64", "Finish time for skin temperature difference [s]"}, - /* 65 */ {"var65", "Skin temperature difference [K]"}, - /* 66 */ {"var66", "Leaf area index, low vegetation [m**2 / m**2]"}, - /* 67 */ {"var67", "Leaf area index, high vegetation [m**2 / m**2]"}, - /* 68 */ {"var68", "Minimum stomatal resistance, low vegetation [s m**-1]"}, - /* 69 */ {"var69", "Minimum stomatal resistance, high vegetation [s m**-1]"}, - /* 70 */ {"var70", "Biome cover, low vegetation [(0 - 1)]"}, - /* 71 */ {"var71", "Biome cover, high vegetation [(0 - 1)]"}, - /* 72 */ {"var72", "undefined"}, - /* 73 */ {"var73", "undefined"}, - /* 74 */ {"var74", "undefined"}, - /* 75 */ {"var75", "undefined"}, - /* 76 */ {"var76", "undefined"}, - /* 77 */ {"var77", "undefined"}, - /* 78 */ {"var78", "Total column liquid water [kg m**-2]"}, - /* 79 */ {"var79", "Total column ice water [kg m**-2]"}, - /* 80 */ {"var80", "Experimental product []"}, - /* 81 */ {"var81", "Experimental product []"}, - /* 82 */ {"var82", "Experimental product []"}, - /* 83 */ {"var83", "Experimental product []"}, - /* 84 */ {"var84", "Experimental product []"}, - /* 85 */ {"var85", "Experimental product []"}, - /* 86 */ {"var86", "Experimental product []"}, - /* 87 */ {"var87", "Experimental product []"}, - /* 88 */ {"var88", "Experimental product []"}, - /* 89 */ {"var89", "Experimental product []"}, - /* 90 */ {"var90", "Experimental product []"}, - /* 91 */ {"var91", "Experimental product []"}, - /* 92 */ {"var92", "Experimental product []"}, - /* 93 */ {"var93", "Experimental product []"}, - /* 94 */ {"var94", "Experimental product []"}, - /* 95 */ {"var95", "Experimental product []"}, - /* 96 */ {"var96", "Experimental product []"}, - /* 97 */ {"var97", "Experimental product []"}, - /* 98 */ {"var98", "Experimental product []"}, - /* 99 */ {"var99", "Experimental product []"}, - /* 100 */ {"var100", "Experimental product []"}, - /* 101 */ {"var101", "Experimental product []"}, - /* 102 */ {"var102", "Experimental product []"}, - /* 103 */ {"var103", "Experimental product []"}, - /* 104 */ {"var104", "Experimental product []"}, - /* 105 */ {"var105", "Experimental product []"}, - /* 106 */ {"var106", "Experimental product []"}, - /* 107 */ {"var107", "Experimental product []"}, - /* 108 */ {"var108", "Experimental product []"}, - /* 109 */ {"var109", "Experimental product []"}, - /* 110 */ {"var110", "Experimental product []"}, - /* 111 */ {"var111", "Experimental product []"}, - /* 112 */ {"var112", "Experimental product []"}, - /* 113 */ {"var113", "Experimental product []"}, - /* 114 */ {"var114", "Experimental product []"}, - /* 115 */ {"var115", "Experimental product []"}, - /* 116 */ {"var116", "Experimental product []"}, - /* 117 */ {"var117", "Experimental product []"}, - /* 118 */ {"var118", "Experimental product []"}, - /* 119 */ {"var119", "Experimental product []"}, - /* 120 */ {"var120", "Experimental product []"}, - /* 121 */ {"MX2T6", "Maximum temperature at 2 metres [K]"}, - /* 122 */ {"MN2T6", "Minimum temperature at 2 metres [K]"}, - /* 123 */ {"10FG6", "10 metre wind gust in the past 6 hours [m s**-1]"}, - /* 124 */ {"var124", "undefined"}, - /* 125 */ {"var125", "Vertically integrated total energy [J m**-2]"}, - /* 126 */ {"var126", "Generic parameter for sensitive area prediction [Various]"}, - /* 127 */ {"AT", "Atmospheric tide []"}, - /* 128 */ {"BV", "Budget values []"}, - /* 129 */ {"Z", "Geopotential [m**2 s**-2]"}, - /* 130 */ {"T", "Temperature [K]"}, - /* 131 */ {"U", "U velocity [m s**-1]"}, - /* 132 */ {"V", "V velocity [m s**-1]"}, - /* 133 */ {"Q", "Specific humidity [kg kg**-1]"}, - /* 134 */ {"SP", "Surface pressure [Pa]"}, - /* 135 */ {"W", "Vertical velocity [Pa s**-1]"}, - /* 136 */ {"TCW", "Total column water [kg m**-2]"}, - /* 137 */ {"TCWV", "Total column water vapour [kg m**-2]"}, - /* 138 */ {"VO", "Vorticity (relative) [s**-1]"}, - /* 139 */ {"STL1", "Soil temperature level 1 [K]"}, - /* 140 */ {"SWL1", "Soil wetness level 1 [m of water]"}, - /* 141 */ {"SD", "Snow depth [m of water equivalent]"}, - /* 142 */ {"LSP", "Stratiform precipitation (Large-scale precipitation) [m]"}, - /* 143 */ {"CP", "Convective precipitation [m]"}, - /* 144 */ {"SF", "Snowfall (convective + stratiform) [m of water equivalent]"}, - /* 145 */ {"BLD", "Boundary layer dissipation [W m**-2 s]"}, - /* 146 */ {"SSHF", "Surface sensible heat flux [W m**-2 s]"}, - /* 147 */ {"SLHF", "Surface latent heat flux [W m**-2 s]"}, - /* 148 */ {"CHNK", "Charnock []"}, - /* 149 */ {"SNR", "Surface net radiation [W m**-2 s]"}, - /* 150 */ {"TNR", "Top net radiation []"}, - /* 151 */ {"MSL", "Mean sea level pressure [Pa]"}, - /* 152 */ {"LNSP", "Logarithm of surface pressure []"}, - /* 153 */ {"SWHR", "Short-wave heating rate [K]"}, - /* 154 */ {"LWHR", "Long-wave heating rate [K]"}, - /* 155 */ {"D", "Divergence [s**-1]"}, - /* 156 */ {"GH", "Height [m]"}, - /* 157 */ {"R", "Relative humidity [%]"}, - /* 158 */ {"TSP", "Tendency of surface pressure [Pa s**-1]"}, - /* 159 */ {"BLH", "Boundary layer height [m]"}, - /* 160 */ {"SDOR", "Standard deviation of orography []"}, - /* 161 */ {"ISOR", "Anisotropy of sub-gridscale orography []"}, - /* 162 */ {"ANOR", "Angle of sub-gridscale orography [rad]"}, - /* 163 */ {"SLOR", "Slope of sub-gridscale orography []"}, - /* 164 */ {"TCC", "Total cloud cover [(0 - 1)]"}, - /* 165 */ {"10U", "10 metre U wind component [m s**-1]"}, - /* 166 */ {"10V", "10 metre V wind component [m s**-1]"}, - /* 167 */ {"2T", "2 metre temperature [K]"}, - /* 168 */ {"2D", "2 metre dewpoint temperature [K]"}, - /* 169 */ {"SSRD", "Surface solar radiation downwards [W m**-2 s]"}, - /* 170 */ {"STL2", "Soil temperature level 2 [K]"}, - /* 171 */ {"SWL2", "Soil wetness level 2 [m of water]"}, - /* 172 */ {"LSM", "Land-sea mask [(0 - 1)]"}, - /* 173 */ {"SR", "Surface roughness [m]"}, - /* 174 */ {"AL", "Albedo [(0 - 1)]"}, - /* 175 */ {"STRD", "Surface thermal radiation downwards [W m**-2 s]"}, - /* 176 */ {"SSR", "Surface solar radiation [W m**-2 s]"}, - /* 177 */ {"STR", "Surface thermal radiation [W m**-2 s]"}, - /* 178 */ {"TSR", "Top solar radiation [W m**-2 s]"}, - /* 179 */ {"TTR", "Top thermal radiation [W m**-2 s]"}, - /* 180 */ {"EWSS", "East-West surface stress [N m**-2 s]"}, - /* 181 */ {"NSSS", "North-South surface stress [N m**-2 s]"}, - /* 182 */ {"E", "Evaporation [m of water]"}, - /* 183 */ {"STL3", "Soil temperature level 3 [K]"}, - /* 184 */ {"SWL3", "Soil wetness level 3 [m of water]"}, - /* 185 */ {"CCC", "Convective cloud cover [(0 - 1)]"}, - /* 186 */ {"LCC", "Low cloud cover [(0 - 1)]"}, - /* 187 */ {"MCC", "Medium cloud cover [(0 - 1)]"}, - /* 188 */ {"HCC", "High cloud cover [(0 - 1)]"}, - /* 189 */ {"SUND", "Sunshine duration [s]"}, - /* 190 */ {"EWOV", "East-West component of sub-gridscale orographic variance [m**2]"}, - /* 191 */ {"NSOV", "North-South component of sub-gridscale orographic variance [m**2]"}, - /* 192 */ {"NWOV", "North-West/South-East component of sub-gridscale orographic variance [m**2]"}, - /* 193 */ {"NEOV", "North-East/South-West component of sub-gridscale orographic variance [m**2]"}, - /* 194 */ {"BTMP", "Brightness temperature [K]"}, - /* 195 */ {"LGWS", "Latitudinal component of gravity wave stress [N m**-2 s]"}, - /* 196 */ {"MGWS", "Meridional component of gravity wave stress [N m**-2 s]"}, - /* 197 */ {"GWD", "Gravity wave dissipation [W m**-2 s]"}, - /* 198 */ {"SRC", "Skin reservoir content [m of water]"}, - /* 199 */ {"VEG", "Vegetation fraction [(0 - 1)]"}, - /* 200 */ {"VSO", "Variance of sub-gridscale orography [m**2]"}, - /* 201 */ {"MX2T", "Maximum temperature at 2 metres since previous post-processing [K]"}, - /* 202 */ {"MN2T", "Minimum temperature at 2 metres since previous post-processing [K]"}, - /* 203 */ {"O3", "Ozone mass mixing ratio [kg kg**-1]"}, - /* 204 */ {"PAW", "Precipitation analysis weights []"}, - /* 205 */ {"RO", "Runoff [m]"}, - /* 206 */ {"TCO3", "Total column ozone [kg m**-2]"}, - /* 207 */ {"10SI", "10 metre wind speed [m s**-1]"}, - /* 208 */ {"TSRC", "Top net solar radiation, clear sky [W m**-2 s]"}, - /* 209 */ {"TTRC", "Top net thermal radiation, clear sky [W m**-2 s]"}, - /* 210 */ {"SSRC", "Surface net solar radiation, clear sky [W m**-2 s]"}, - /* 211 */ {"STRC", "Surface net thermal radiation, clear sky [W m**-2 s]"}, - /* 212 */ {"TISR", "TOA incident solar radiation [W m**-2 s]"}, - /* 213 */ {"var213", "undefined"}, - /* 214 */ {"DHR", "Diabatic heating by radiation [K]"}, - /* 215 */ {"DHVD", "Diabatic heating by vertical diffusion [K]"}, - /* 216 */ {"DHCC", "Diabatic heating by cumulus convection [K]"}, - /* 217 */ {"DHLC", "Diabatic heating large-scale condensation [K]"}, - /* 218 */ {"VDZW", "Vertical diffusion of zonal wind [m s**-1]"}, - /* 219 */ {"VDMW", "Vertical diffusion of meridional wind [m s**-1]"}, - /* 220 */ {"EWGD", "East-West gravity wave drag tendency [m s**-1]"}, - /* 221 */ {"NSGD", "North-South gravity wave drag tendency [m s**-1]"}, - /* 222 */ {"CTZW", "Convective tendency of zonal wind [m s**-1]"}, - /* 223 */ {"CTMW", "Convective tendency of meridional wind [m s**-1]"}, - /* 224 */ {"VDH", "Vertical diffusion of humidity [kg kg**-1]"}, - /* 225 */ {"HTCC", "Humidity tendency by cumulus convection [kg kg**-1]"}, - /* 226 */ {"HTLC", "Humidity tendency by large-scale condensation [kg kg**-1]"}, - /* 227 */ {"CRNH", "Change from removal of negative humidity [kg kg**-1]"}, - /* 228 */ {"TP", "Total precipitation [m]"}, - /* 229 */ {"IEWS", "Instantaneous X surface stress [N m**-2]"}, - /* 230 */ {"INSS", "Instantaneous Y surface stress [N m**-2]"}, - /* 231 */ {"ISHF", "Instantaneous surface heat flux [W m**-2]"}, - /* 232 */ {"IE", "Instantaneous moisture flux [kg m**-2 s]"}, - /* 233 */ {"ASQ", "Apparent surface humidity [kg kg**-1]"}, - /* 234 */ {"LSRH", "Logarithm of surface roughness length for heat []"}, - /* 235 */ {"SKT", "Skin temperature [K]"}, - /* 236 */ {"STL4", "Soil temperature level 4 [K]"}, - /* 237 */ {"SWL4", "Soil wetness level 4 [m]"}, - /* 238 */ {"TSN", "Temperature of snow layer [K]"}, - /* 239 */ {"CSF", "Convective snowfall [m of water equivalent]"}, - /* 240 */ {"LSF", "Large-scale snowfall [m of water equivalent]"}, - /* 241 */ {"ACF", "Accumulated cloud fraction tendency [(-1 to 1)]"}, - /* 242 */ {"ALW", "Accumulated liquid water tendency [(-1 to 1)]"}, - /* 243 */ {"FAL", "Forecast albedo [(0 - 1)]"}, - /* 244 */ {"FSR", "Forecast surface roughness [m]"}, - /* 245 */ {"FLSR", "Forecast logarithm of surface roughness for heat []"}, - /* 246 */ {"CLWC", "Cloud liquid water content [kg kg**-1]"}, - /* 247 */ {"CIWC", "Cloud ice water content [kg kg**-1]"}, - /* 248 */ {"CC", "Cloud cover [(0 - 1)]"}, - /* 249 */ {"AIW", "Accumulated ice water tendency [(-1 to 1)]"}, - /* 250 */ {"ICE", "Ice age [(0 - 1)]"}, - /* 251 */ {"ATTE", "Adiabatic tendency of temperature [K]"}, - /* 252 */ {"ATHE", "Adiabatic tendency of humidity [kg kg**-1]"}, - /* 253 */ {"ATZE", "Adiabatic tendency of zonal wind [m s**-1]"}, - /* 254 */ {"ATMW", "Adiabatic tendency of meridional wind [m s**-1]"}, - /* 255 */ {"var255", "Indicates a missing value []"}, + /* 0 */ {"var0", "undefined"}, + /* 1 */ {"STRF", "Stream function [m**2 s**-1]"}, + /* 2 */ {"VPOT", "Velocity potential [m**2 s**-1]"}, + /* 3 */ {"PT", "Potential temperature [K]"}, + /* 4 */ {"EQPT", "Equivalent potential temperature [K]"}, + /* 5 */ {"SEPT", "Saturated equivalent potential temperature [K]"}, + /* 6 */ {"var6", "undefined"}, + /* 7 */ {"var7", "undefined"}, + /* 8 */ {"var8", "undefined"}, + /* 9 */ {"var9", "undefined"}, + /* 10 */ {"var10", "undefined"}, + /* 11 */ {"UDVW", "U component of divergent wind [m s**-1]"}, + /* 12 */ {"VDVW", "V component of divergent wind [m s**-1]"}, + /* 13 */ {"URTW", "U component of rotational wind [m s**-1]"}, + /* 14 */ {"VRTW", "V component of rotational wind [m s**-1]"}, + /* 15 */ {"var15", "undefined"}, + /* 16 */ {"var16", "undefined"}, + /* 17 */ {"var17", "undefined"}, + /* 18 */ {"var18", "undefined"}, + /* 19 */ {"var19", "undefined"}, + /* 20 */ {"var20", "undefined"}, + /* 21 */ {"UCTP", "Unbalanced component of temperature [K]"}, + /* 22 */ {"UCLN", "Unbalanced component of logarithm of surface pressure []"}, + /* 23 */ {"UCDV", "Unbalanced component of divergence [s**-1]"}, + /* 24 */ {"var24", "Reserved for future unbalanced components []"}, + /* 25 */ {"var25", "Reserved for future unbalanced components []"}, + /* 26 */ {"CL", "Lake cover [(0 - 1)]"}, + /* 27 */ {"CVL", "Low vegetation cover [(0 - 1)]"}, + /* 28 */ {"CVH", "High vegetation cover [(0 - 1)]"}, + /* 29 */ {"TVL", "Type of low vegetation []"}, + /* 30 */ {"TVH", "Type of high vegetation []"}, + /* 31 */ {"CI", "Sea-ice cover [(0 - 1)]"}, + /* 32 */ {"ASN", "Snow albedo [(0 - 1)]"}, + /* 33 */ {"RSN", "Snow density [kg m**-3]"}, + /* 34 */ {"SSTK", "Sea surface temperature [K]"}, + /* 35 */ {"ISTL1", "Ice surface temperature layer 1 [K]"}, + /* 36 */ {"ISTL2", "Ice surface temperature layer 2 [K]"}, + /* 37 */ {"ISTL3", "Ice surface temperature layer 3 [K]"}, + /* 38 */ {"ISTL4", "Ice surface temperature layer 4 [K]"}, + /* 39 */ {"SWVL1", "Volumetric soil water layer 1 [m**3 m**-3]"}, + /* 40 */ {"SWVL2", "Volumetric soil water layer 2 [m**3 m**-3]"}, + /* 41 */ {"SWVL3", "Volumetric soil water layer 3 [m**3 m**-3]"}, + /* 42 */ {"SWVL4", "Volumetric soil water layer 4 [m**3 m**-3]"}, + /* 43 */ {"SLT", "Soil type []"}, + /* 44 */ {"ES", "Snow evaporation [m of water]"}, + /* 45 */ {"SMLT", "Snowmelt [m of water]"}, + /* 46 */ {"SDUR", "Solar duration [s]"}, + /* 47 */ {"DSRP", "Direct solar radiation [w m**-2]"}, + /* 48 */ {"MAGSS", "Magnitude of surface stress [N m**-2 s]"}, + /* 49 */ {"10FG", "10 metre wind gust [m s**-1]"}, + /* 50 */ {"LSPF", "Large-scale precipitation fraction [s]"}, + /* 51 */ {"MX2T24", "Maximum 2 metre temperature [K]"}, + /* 52 */ {"MN2T24", "Minimum 2 metre temperature [K]"}, + /* 53 */ {"MONT", "Montgomery potential [m**2 s**-2]"}, + /* 54 */ {"PRES", "Pressure [Pa]"}, + /* 55 */ {"MEAN2T24", "Mean 2 metre temperature in past 24 hours [K]"}, + /* 56 */ {"MN2D24", "Mean 2 metre dewpoint temperature in past 24 hours [K]"}, + /* 57 */ {"UVB", "Downward UV radiation at the surface [w m**-2 s]"}, + /* 58 */ {"PAR", "Photosynthetically active radiation at the surface [w m**-2 s]"}, + /* 59 */ {"CAPE", "Convective available potential energy [J kg**-1]"}, + /* 60 */ {"PV", "Potential vorticity [K m**2 kg**-1 s**-1]"}, + /* 61 */ {"TPO", "Total precipitation from observations [Millimetres*100 + number of stations]"}, + /* 62 */ {"OBCT", "Observation count []"}, + /* 63 */ {"var63", "Start time for skin temperature difference [s]"}, + /* 64 */ {"var64", "Finish time for skin temperature difference [s]"}, + /* 65 */ {"var65", "Skin temperature difference [K]"}, + /* 66 */ {"var66", "Leaf area index, low vegetation [m**2 / m**2]"}, + /* 67 */ {"var67", "Leaf area index, high vegetation [m**2 / m**2]"}, + /* 68 */ {"var68", "Minimum stomatal resistance, low vegetation [s m**-1]"}, + /* 69 */ {"var69", "Minimum stomatal resistance, high vegetation [s m**-1]"}, + /* 70 */ {"var70", "Biome cover, low vegetation [(0 - 1)]"}, + /* 71 */ {"var71", "Biome cover, high vegetation [(0 - 1)]"}, + /* 72 */ {"var72", "undefined"}, + /* 73 */ {"var73", "undefined"}, + /* 74 */ {"var74", "undefined"}, + /* 75 */ {"var75", "undefined"}, + /* 76 */ {"var76", "undefined"}, + /* 77 */ {"var77", "undefined"}, + /* 78 */ {"var78", "Total column liquid water [kg m**-2]"}, + /* 79 */ {"var79", "Total column ice water [kg m**-2]"}, + /* 80 */ {"var80", "Experimental product []"}, + /* 81 */ {"var81", "Experimental product []"}, + /* 82 */ {"var82", "Experimental product []"}, + /* 83 */ {"var83", "Experimental product []"}, + /* 84 */ {"var84", "Experimental product []"}, + /* 85 */ {"var85", "Experimental product []"}, + /* 86 */ {"var86", "Experimental product []"}, + /* 87 */ {"var87", "Experimental product []"}, + /* 88 */ {"var88", "Experimental product []"}, + /* 89 */ {"var89", "Experimental product []"}, + /* 90 */ {"var90", "Experimental product []"}, + /* 91 */ {"var91", "Experimental product []"}, + /* 92 */ {"var92", "Experimental product []"}, + /* 93 */ {"var93", "Experimental product []"}, + /* 94 */ {"var94", "Experimental product []"}, + /* 95 */ {"var95", "Experimental product []"}, + /* 96 */ {"var96", "Experimental product []"}, + /* 97 */ {"var97", "Experimental product []"}, + /* 98 */ {"var98", "Experimental product []"}, + /* 99 */ {"var99", "Experimental product []"}, + /* 100 */ {"var100", "Experimental product []"}, + /* 101 */ {"var101", "Experimental product []"}, + /* 102 */ {"var102", "Experimental product []"}, + /* 103 */ {"var103", "Experimental product []"}, + /* 104 */ {"var104", "Experimental product []"}, + /* 105 */ {"var105", "Experimental product []"}, + /* 106 */ {"var106", "Experimental product []"}, + /* 107 */ {"var107", "Experimental product []"}, + /* 108 */ {"var108", "Experimental product []"}, + /* 109 */ {"var109", "Experimental product []"}, + /* 110 */ {"var110", "Experimental product []"}, + /* 111 */ {"var111", "Experimental product []"}, + /* 112 */ {"var112", "Experimental product []"}, + /* 113 */ {"var113", "Experimental product []"}, + /* 114 */ {"var114", "Experimental product []"}, + /* 115 */ {"var115", "Experimental product []"}, + /* 116 */ {"var116", "Experimental product []"}, + /* 117 */ {"var117", "Experimental product []"}, + /* 118 */ {"var118", "Experimental product []"}, + /* 119 */ {"var119", "Experimental product []"}, + /* 120 */ {"var120", "Experimental product []"}, + /* 121 */ {"MX2T6", "Maximum temperature at 2 metres [K]"}, + /* 122 */ {"MN2T6", "Minimum temperature at 2 metres [K]"}, + /* 123 */ {"10FG6", "10 metre wind gust in the past 6 hours [m s**-1]"}, + /* 124 */ {"var124", "undefined"}, + /* 125 */ {"var125", "Vertically integrated total energy [J m**-2]"}, + /* 126 */ {"var126", "Generic parameter for sensitive area prediction [Various]"}, + /* 127 */ {"AT", "Atmospheric tide []"}, + /* 128 */ {"BV", "Budget values []"}, + /* 129 */ {"Z", "Geopotential [m**2 s**-2]"}, + /* 130 */ {"T", "Temperature [K]"}, + /* 131 */ {"U", "U velocity [m s**-1]"}, + /* 132 */ {"V", "V velocity [m s**-1]"}, + /* 133 */ {"Q", "Specific humidity [kg kg**-1]"}, + /* 134 */ {"SP", "Surface pressure [Pa]"}, + /* 135 */ {"W", "Vertical velocity [Pa s**-1]"}, + /* 136 */ {"TCW", "Total column water [kg m**-2]"}, + /* 137 */ {"TCWV", "Total column water vapour [kg m**-2]"}, + /* 138 */ {"VO", "Vorticity (relative) [s**-1]"}, + /* 139 */ {"STL1", "Soil temperature level 1 [K]"}, + /* 140 */ {"SWL1", "Soil wetness level 1 [m of water]"}, + /* 141 */ {"SD", "Snow depth [m of water equivalent]"}, + /* 142 */ {"LSP", "Stratiform precipitation (Large-scale precipitation) [m]"}, + /* 143 */ {"CP", "Convective precipitation [m]"}, + /* 144 */ {"SF", "Snowfall (convective + stratiform) [m of water equivalent]"}, + /* 145 */ {"BLD", "Boundary layer dissipation [W m**-2 s]"}, + /* 146 */ {"SSHF", "Surface sensible heat flux [W m**-2 s]"}, + /* 147 */ {"SLHF", "Surface latent heat flux [W m**-2 s]"}, + /* 148 */ {"CHNK", "Charnock []"}, + /* 149 */ {"SNR", "Surface net radiation [W m**-2 s]"}, + /* 150 */ {"TNR", "Top net radiation []"}, + /* 151 */ {"MSL", "Mean sea level pressure [Pa]"}, + /* 152 */ {"LNSP", "Logarithm of surface pressure []"}, + /* 153 */ {"SWHR", "Short-wave heating rate [K]"}, + /* 154 */ {"LWHR", "Long-wave heating rate [K]"}, + /* 155 */ {"D", "Divergence [s**-1]"}, + /* 156 */ {"GH", "Height [m]"}, + /* 157 */ {"R", "Relative humidity [%]"}, + /* 158 */ {"TSP", "Tendency of surface pressure [Pa s**-1]"}, + /* 159 */ {"BLH", "Boundary layer height [m]"}, + /* 160 */ {"SDOR", "Standard deviation of orography []"}, + /* 161 */ {"ISOR", "Anisotropy of sub-gridscale orography []"}, + /* 162 */ {"ANOR", "Angle of sub-gridscale orography [rad]"}, + /* 163 */ {"SLOR", "Slope of sub-gridscale orography []"}, + /* 164 */ {"TCC", "Total cloud cover [(0 - 1)]"}, + /* 165 */ {"10U", "10 metre U wind component [m s**-1]"}, + /* 166 */ {"10V", "10 metre V wind component [m s**-1]"}, + /* 167 */ {"2T", "2 metre temperature [K]"}, + /* 168 */ {"2D", "2 metre dewpoint temperature [K]"}, + /* 169 */ {"SSRD", "Surface solar radiation downwards [W m**-2 s]"}, + /* 170 */ {"STL2", "Soil temperature level 2 [K]"}, + /* 171 */ {"SWL2", "Soil wetness level 2 [m of water]"}, + /* 172 */ {"LSM", "Land-sea mask [(0 - 1)]"}, + /* 173 */ {"SR", "Surface roughness [m]"}, + /* 174 */ {"AL", "Albedo [(0 - 1)]"}, + /* 175 */ {"STRD", "Surface thermal radiation downwards [W m**-2 s]"}, + /* 176 */ {"SSR", "Surface solar radiation [W m**-2 s]"}, + /* 177 */ {"STR", "Surface thermal radiation [W m**-2 s]"}, + /* 178 */ {"TSR", "Top solar radiation [W m**-2 s]"}, + /* 179 */ {"TTR", "Top thermal radiation [W m**-2 s]"}, + /* 180 */ {"EWSS", "East-West surface stress [N m**-2 s]"}, + /* 181 */ {"NSSS", "North-South surface stress [N m**-2 s]"}, + /* 182 */ {"E", "Evaporation [m of water]"}, + /* 183 */ {"STL3", "Soil temperature level 3 [K]"}, + /* 184 */ {"SWL3", "Soil wetness level 3 [m of water]"}, + /* 185 */ {"CCC", "Convective cloud cover [(0 - 1)]"}, + /* 186 */ {"LCC", "Low cloud cover [(0 - 1)]"}, + /* 187 */ {"MCC", "Medium cloud cover [(0 - 1)]"}, + /* 188 */ {"HCC", "High cloud cover [(0 - 1)]"}, + /* 189 */ {"SUND", "Sunshine duration [s]"}, + /* 190 */ {"EWOV", "East-West component of sub-gridscale orographic variance [m**2]"}, + /* 191 */ {"NSOV", "North-South component of sub-gridscale orographic variance [m**2]"}, + /* 192 */ {"NWOV", "North-West/South-East component of sub-gridscale orographic variance [m**2]"}, + /* 193 */ {"NEOV", "North-East/South-West component of sub-gridscale orographic variance [m**2]"}, + /* 194 */ {"BTMP", "Brightness temperature [K]"}, + /* 195 */ {"LGWS", "Latitudinal component of gravity wave stress [N m**-2 s]"}, + /* 196 */ {"MGWS", "Meridional component of gravity wave stress [N m**-2 s]"}, + /* 197 */ {"GWD", "Gravity wave dissipation [W m**-2 s]"}, + /* 198 */ {"SRC", "Skin reservoir content [m of water]"}, + /* 199 */ {"VEG", "Vegetation fraction [(0 - 1)]"}, + /* 200 */ {"VSO", "Variance of sub-gridscale orography [m**2]"}, + /* 201 */ {"MX2T", "Maximum temperature at 2 metres since previous post-processing [K]"}, + /* 202 */ {"MN2T", "Minimum temperature at 2 metres since previous post-processing [K]"}, + /* 203 */ {"O3", "Ozone mass mixing ratio [kg kg**-1]"}, + /* 204 */ {"PAW", "Precipitation analysis weights []"}, + /* 205 */ {"RO", "Runoff [m]"}, + /* 206 */ {"TCO3", "Total column ozone [kg m**-2]"}, + /* 207 */ {"10SI", "10 metre wind speed [m s**-1]"}, + /* 208 */ {"TSRC", "Top net solar radiation, clear sky [W m**-2 s]"}, + /* 209 */ {"TTRC", "Top net thermal radiation, clear sky [W m**-2 s]"}, + /* 210 */ {"SSRC", "Surface net solar radiation, clear sky [W m**-2 s]"}, + /* 211 */ {"STRC", "Surface net thermal radiation, clear sky [W m**-2 s]"}, + /* 212 */ {"TISR", "TOA incident solar radiation [W m**-2 s]"}, + /* 213 */ {"var213", "undefined"}, + /* 214 */ {"DHR", "Diabatic heating by radiation [K]"}, + /* 215 */ {"DHVD", "Diabatic heating by vertical diffusion [K]"}, + /* 216 */ {"DHCC", "Diabatic heating by cumulus convection [K]"}, + /* 217 */ {"DHLC", "Diabatic heating large-scale condensation [K]"}, + /* 218 */ {"VDZW", "Vertical diffusion of zonal wind [m s**-1]"}, + /* 219 */ {"VDMW", "Vertical diffusion of meridional wind [m s**-1]"}, + /* 220 */ {"EWGD", "East-West gravity wave drag tendency [m s**-1]"}, + /* 221 */ {"NSGD", "North-South gravity wave drag tendency [m s**-1]"}, + /* 222 */ {"CTZW", "Convective tendency of zonal wind [m s**-1]"}, + /* 223 */ {"CTMW", "Convective tendency of meridional wind [m s**-1]"}, + /* 224 */ {"VDH", "Vertical diffusion of humidity [kg kg**-1]"}, + /* 225 */ {"HTCC", "Humidity tendency by cumulus convection [kg kg**-1]"}, + /* 226 */ {"HTLC", "Humidity tendency by large-scale condensation [kg kg**-1]"}, + /* 227 */ {"CRNH", "Change from removal of negative humidity [kg kg**-1]"}, + /* 228 */ {"TP", "Total precipitation [m]"}, + /* 229 */ {"IEWS", "Instantaneous X surface stress [N m**-2]"}, + /* 230 */ {"INSS", "Instantaneous Y surface stress [N m**-2]"}, + /* 231 */ {"ISHF", "Instantaneous surface heat flux [W m**-2]"}, + /* 232 */ {"IE", "Instantaneous moisture flux [kg m**-2 s]"}, + /* 233 */ {"ASQ", "Apparent surface humidity [kg kg**-1]"}, + /* 234 */ {"LSRH", "Logarithm of surface roughness length for heat []"}, + /* 235 */ {"SKT", "Skin temperature [K]"}, + /* 236 */ {"STL4", "Soil temperature level 4 [K]"}, + /* 237 */ {"SWL4", "Soil wetness level 4 [m]"}, + /* 238 */ {"TSN", "Temperature of snow layer [K]"}, + /* 239 */ {"CSF", "Convective snowfall [m of water equivalent]"}, + /* 240 */ {"LSF", "Large-scale snowfall [m of water equivalent]"}, + /* 241 */ {"ACF", "Accumulated cloud fraction tendency [(-1 to 1)]"}, + /* 242 */ {"ALW", "Accumulated liquid water tendency [(-1 to 1)]"}, + /* 243 */ {"FAL", "Forecast albedo [(0 - 1)]"}, + /* 244 */ {"FSR", "Forecast surface roughness [m]"}, + /* 245 */ {"FLSR", "Forecast logarithm of surface roughness for heat []"}, + /* 246 */ {"CLWC", "Cloud liquid water content [kg kg**-1]"}, + /* 247 */ {"CIWC", "Cloud ice water content [kg kg**-1]"}, + /* 248 */ {"CC", "Cloud cover [(0 - 1)]"}, + /* 249 */ {"AIW", "Accumulated ice water tendency [(-1 to 1)]"}, + /* 250 */ {"ICE", "Ice age [(0 - 1)]"}, + /* 251 */ {"ATTE", "Adiabatic tendency of temperature [K]"}, + /* 252 */ {"ATHE", "Adiabatic tendency of humidity [kg kg**-1]"}, + /* 253 */ {"ATZE", "Adiabatic tendency of zonal wind [m s**-1]"}, + /* 254 */ {"ATMW", "Adiabatic tendency of meridional wind [m s**-1]"}, + /* 255 */ {"var255", "Indicates a missing value []"}, }; const struct ParmTable parm_table_ecmwf_130[256] = { + /* 0 */ {"var0", "undefined"}, + /* 1 */ {"var1", "undefined"}, + /* 2 */ {"var2", "undefined"}, + /* 3 */ {"var3", "undefined"}, + /* 4 */ {"var4", "undefined"}, + /* 5 */ {"var5", "undefined"}, + /* 6 */ {"var6", "undefined"}, + /* 7 */ {"var7", "undefined"}, + /* 8 */ {"var8", "undefined"}, + /* 9 */ {"var9", "undefined"}, + /* 10 */ {"var10", "undefined"}, + /* 11 */ {"var11", "undefined"}, + /* 12 */ {"var12", "undefined"}, + /* 13 */ {"var13", "undefined"}, + /* 14 */ {"var14", "undefined"}, + /* 15 */ {"var15", "undefined"}, + /* 16 */ {"var16", "undefined"}, + /* 17 */ {"var17", "undefined"}, + /* 18 */ {"var18", "undefined"}, + /* 19 */ {"var19", "undefined"}, + /* 20 */ {"var20", "undefined"}, + /* 21 */ {"var21", "undefined"}, + /* 22 */ {"var22", "undefined"}, + /* 23 */ {"var23", "undefined"}, + /* 24 */ {"var24", "undefined"}, + /* 25 */ {"var25", "undefined"}, + /* 26 */ {"var26", "undefined"}, + /* 27 */ {"var27", "undefined"}, + /* 28 */ {"var28", "undefined"}, + /* 29 */ {"var29", "undefined"}, + /* 30 */ {"var30", "undefined"}, + /* 31 */ {"var31", "undefined"}, + /* 32 */ {"var32", "undefined"}, + /* 33 */ {"var33", "undefined"}, + /* 34 */ {"var34", "undefined"}, + /* 35 */ {"var35", "undefined"}, + /* 36 */ {"var36", "undefined"}, + /* 37 */ {"var37", "undefined"}, + /* 38 */ {"var38", "undefined"}, + /* 39 */ {"var39", "undefined"}, + /* 40 */ {"var40", "undefined"}, + /* 41 */ {"var41", "undefined"}, + /* 42 */ {"var42", "undefined"}, + /* 43 */ {"var43", "undefined"}, + /* 44 */ {"var44", "undefined"}, + /* 45 */ {"var45", "undefined"}, + /* 46 */ {"var46", "undefined"}, + /* 47 */ {"var47", "undefined"}, + /* 48 */ {"var48", "undefined"}, + /* 49 */ {"var49", "undefined"}, + /* 50 */ {"var50", "undefined"}, + /* 51 */ {"var51", "undefined"}, + /* 52 */ {"var52", "undefined"}, + /* 53 */ {"var53", "undefined"}, + /* 54 */ {"var54", "undefined"}, + /* 55 */ {"var55", "undefined"}, + /* 56 */ {"var56", "undefined"}, + /* 57 */ {"var57", "undefined"}, + /* 58 */ {"var58", "undefined"}, + /* 59 */ {"var59", "undefined"}, + /* 60 */ {"var60", "undefined"}, + /* 61 */ {"var61", "undefined"}, + /* 62 */ {"var62", "undefined"}, + /* 63 */ {"var63", "undefined"}, + /* 64 */ {"var64", "undefined"}, + /* 65 */ {"var65", "undefined"}, + /* 66 */ {"var66", "undefined"}, + /* 67 */ {"var67", "undefined"}, + /* 68 */ {"var68", "undefined"}, + /* 69 */ {"var69", "undefined"}, + /* 70 */ {"var70", "undefined"}, + /* 71 */ {"var71", "undefined"}, + /* 72 */ {"var72", "undefined"}, + /* 73 */ {"var73", "undefined"}, + /* 74 */ {"var74", "undefined"}, + /* 75 */ {"var75", "undefined"}, + /* 76 */ {"var76", "undefined"}, + /* 77 */ {"var77", "undefined"}, + /* 78 */ {"var78", "undefined"}, + /* 79 */ {"var79", "undefined"}, + /* 80 */ {"var80", "undefined"}, + /* 81 */ {"var81", "undefined"}, + /* 82 */ {"var82", "undefined"}, + /* 83 */ {"var83", "undefined"}, + /* 84 */ {"var84", "undefined"}, + /* 85 */ {"var85", "undefined"}, + /* 86 */ {"var86", "undefined"}, + /* 87 */ {"var87", "undefined"}, + /* 88 */ {"var88", "undefined"}, + /* 89 */ {"var89", "undefined"}, + /* 90 */ {"var90", "undefined"}, + /* 91 */ {"var91", "undefined"}, + /* 92 */ {"var92", "undefined"}, + /* 93 */ {"var93", "undefined"}, + /* 94 */ {"var94", "undefined"}, + /* 95 */ {"var95", "undefined"}, + /* 96 */ {"var96", "undefined"}, + /* 97 */ {"var97", "undefined"}, + /* 98 */ {"var98", "undefined"}, + /* 99 */ {"var99", "undefined"}, + /* 100 */ {"var100", "undefined"}, + /* 101 */ {"var101", "undefined"}, + /* 102 */ {"var102", "undefined"}, + /* 103 */ {"var103", "undefined"}, + /* 104 */ {"var104", "undefined"}, + /* 105 */ {"var105", "undefined"}, + /* 106 */ {"var106", "undefined"}, + /* 107 */ {"var107", "undefined"}, + /* 108 */ {"var108", "undefined"}, + /* 109 */ {"var109", "undefined"}, + /* 110 */ {"var110", "undefined"}, + /* 111 */ {"var111", "undefined"}, + /* 112 */ {"var112", "undefined"}, + /* 113 */ {"var113", "undefined"}, + /* 114 */ {"var114", "undefined"}, + /* 115 */ {"var115", "undefined"}, + /* 116 */ {"var116", "undefined"}, + /* 117 */ {"var117", "undefined"}, + /* 118 */ {"var118", "undefined"}, + /* 119 */ {"var119", "undefined"}, + /* 120 */ {"var120", "undefined"}, + /* 121 */ {"var121", "undefined"}, + /* 122 */ {"var122", "undefined"}, + /* 123 */ {"var123", "undefined"}, + /* 124 */ {"var124", "undefined"}, + /* 125 */ {"var125", "undefined"}, + /* 126 */ {"var126", "undefined"}, + /* 127 */ {"var127", "undefined"}, + /* 128 */ {"var128", "undefined"}, + /* 129 */ {"var129", "undefined"}, + /* 130 */ {"var130", "undefined"}, + /* 131 */ {"var131", "undefined"}, + /* 132 */ {"var132", "undefined"}, + /* 133 */ {"var133", "undefined"}, + /* 134 */ {"var134", "undefined"}, + /* 135 */ {"var135", "undefined"}, + /* 136 */ {"var136", "undefined"}, + /* 137 */ {"var137", "undefined"}, + /* 138 */ {"var138", "undefined"}, + /* 139 */ {"var139", "undefined"}, + /* 140 */ {"var140", "undefined"}, + /* 141 */ {"var141", "undefined"}, + /* 142 */ {"var142", "undefined"}, + /* 143 */ {"var143", "undefined"}, + /* 144 */ {"var144", "undefined"}, + /* 145 */ {"var145", "undefined"}, + /* 146 */ {"var146", "undefined"}, + /* 147 */ {"var147", "undefined"}, + /* 148 */ {"var148", "undefined"}, + /* 149 */ {"var149", "undefined"}, + /* 150 */ {"var150", "undefined"}, + /* 151 */ {"var151", "undefined"}, + /* 152 */ {"var152", "undefined"}, + /* 153 */ {"var153", "undefined"}, + /* 154 */ {"var154", "undefined"}, + /* 155 */ {"var155", "undefined"}, + /* 156 */ {"var156", "undefined"}, + /* 157 */ {"var157", "undefined"}, + /* 158 */ {"var158", "undefined"}, + /* 159 */ {"var159", "undefined"}, + /* 160 */ {"var160", "undefined"}, + /* 161 */ {"var161", "undefined"}, + /* 162 */ {"var162", "undefined"}, + /* 163 */ {"var163", "undefined"}, + /* 164 */ {"var164", "undefined"}, + /* 165 */ {"var165", "undefined"}, + /* 166 */ {"var166", "undefined"}, + /* 167 */ {"var167", "undefined"}, + /* 168 */ {"var168", "undefined"}, + /* 169 */ {"var169", "undefined"}, + /* 170 */ {"var170", "undefined"}, + /* 171 */ {"var171", "undefined"}, + /* 172 */ {"var172", "undefined"}, + /* 173 */ {"var173", "undefined"}, + /* 174 */ {"var174", "undefined"}, + /* 175 */ {"var175", "undefined"}, + /* 176 */ {"var176", "undefined"}, + /* 177 */ {"var177", "undefined"}, + /* 178 */ {"var178", "undefined"}, + /* 179 */ {"var179", "undefined"}, + /* 180 */ {"var180", "undefined"}, + /* 181 */ {"var181", "undefined"}, + /* 182 */ {"var182", "undefined"}, + /* 183 */ {"var183", "undefined"}, + /* 184 */ {"var184", "undefined"}, + /* 185 */ {"var185", "undefined"}, + /* 186 */ {"var186", "undefined"}, + /* 187 */ {"var187", "undefined"}, + /* 188 */ {"var188", "undefined"}, + /* 189 */ {"var189", "undefined"}, + /* 190 */ {"var190", "undefined"}, + /* 191 */ {"var191", "undefined"}, + /* 192 */ {"var192", "undefined"}, + /* 193 */ {"var193", "undefined"}, + /* 194 */ {"var194", "undefined"}, + /* 195 */ {"var195", "undefined"}, + /* 196 */ {"var196", "undefined"}, + /* 197 */ {"var197", "undefined"}, + /* 198 */ {"var198", "undefined"}, + /* 199 */ {"var199", "undefined"}, + /* 200 */ {"var200", "undefined"}, + /* 201 */ {"var201", "undefined"}, + /* 202 */ {"var202", "undefined"}, + /* 203 */ {"var203", "undefined"}, + /* 204 */ {"var204", "undefined"}, + /* 205 */ {"var205", "undefined"}, + /* 206 */ {"var206", "undefined"}, + /* 207 */ {"var207", "undefined"}, + /* 208 */ {"TSRU", "Top solar radiation upward [W m**-2]"}, + /* 209 */ {"TTRU", "Top thermal radiation upward [W m**-2]"}, + /* 210 */ {"TSUC", "Top solar radiation upward, clear sky [W m**-2]"}, + /* 211 */ {"TTUC", "Top thermal radiation upward, clear sky [W m**-2]"}, + /* 212 */ {"CLW", "Cloud liquid water [kg kg**-1]"}, + /* 213 */ {"CF", "Cloud fraction [(0 - 1)]"}, + /* 214 */ {"DHR", "Diabatic heating by radiation [K s**-1]"}, + /* 215 */ {"DHVD", "Diabatic heating by vertical diffusion [K s**-1]"}, + /* 216 */ {"DHCC", "Diabatic heating by cumulus convection [K s**-1]"}, + /* 217 */ {"DHLC", "Diabatic heating by large-scale condensation [K s**-1]"}, + /* 218 */ {"VDZW", "Vertical diffusion of zonal wind [m**2 s**-3]"}, + /* 219 */ {"VDMW", "Vertical diffusion of meridional wind [m**2 s**-3]"}, + /* 220 */ {"EWGD", "East-West gravity wave drag [m**2 s**-3]"}, + /* 221 */ {"NSGD", "North-South gravity wave drag [m**2 s**-3]"}, + /* 222 */ {"CTZW", "Convective tendency of zonal wind [m**2 s**-3]"}, + /* 223 */ {"CTMW", "Convective tendency of meridional wind [m**2 s**-3]"}, + /* 224 */ {"VDH", "Vertical diffusion of humidity [kg kg**-1 s**-1]"}, + /* 225 */ {"HTCC", "Humidity tendency by cumulus convection [kg kg**-1 s**-1]"}, + /* 226 */ {"HTLC", "Humidity tendency by large-scale condensation [kg kg**-1 s**-1]"}, + /* 227 */ {"CRNH", "Change from removal of negative humidity [kg kg**-1 s**-1]"}, + /* 228 */ {"ATT", "Adiabatic tendency of temperature [K s**-1]"}, + /* 229 */ {"ATH", "Adiabatic tendency of humidity [kg kg**-1 s**-1]"}, + /* 230 */ {"ATZW", "Adiabatic tendency of zonal wind [m**2 s**-3]"}, + /* 231 */ {"ATMWAX", "Adiabatic tendency of meridional wind [m**2 s**-3]"}, + /* 232 */ {"MVV", "Mean vertical velocity [Pa s**-1]"}, + /* 233 */ {"var233", "undefined"}, + /* 234 */ {"var234", "undefined"}, + /* 235 */ {"var235", "undefined"}, + /* 236 */ {"var236", "undefined"}, + /* 237 */ {"var237", "undefined"}, + /* 238 */ {"var238", "undefined"}, + /* 239 */ {"var239", "undefined"}, + /* 240 */ {"var240", "undefined"}, + /* 241 */ {"var241", "undefined"}, + /* 242 */ {"var242", "undefined"}, + /* 243 */ {"var243", "undefined"}, + /* 244 */ {"var244", "undefined"}, + /* 245 */ {"var245", "undefined"}, + /* 246 */ {"var246", "undefined"}, + /* 247 */ {"var247", "undefined"}, + /* 248 */ {"var248", "undefined"}, + /* 249 */ {"var249", "undefined"}, + /* 250 */ {"var250", "undefined"}, + /* 251 */ {"var251", "undefined"}, + /* 252 */ {"var252", "undefined"}, + /* 253 */ {"var253", "undefined"}, + /* 254 */ {"var254", "undefined"}, + /* 255 */ {"var255", "Indicates a missing value []"}, +}; + +const struct ParmTable parm_table_ecmwf_131[256] = { + /* 0 */ {"var0", "undefined"}, + /* 1 */ {"2TAG2", "2m temperature anomaly of at least +2K [%]"}, + /* 2 */ {"2TAG1", "2m temperature anomaly of at least +1K [%]"}, + /* 3 */ {"2TAG0", "2m temperature anomaly of at least 0K [%]"}, + /* 4 */ {"2TALM1", "2m temperature anomaly of at most -1K [%]"}, + /* 5 */ {"2TALM2", "2m temperature anomaly of at most -2K [%]"}, + /* 6 */ {"TPAG20", "Total precipitation anomaly of at least 20 mm [%]"}, + /* 7 */ {"TPAG10", "Total precipitation anomaly of at least 10 mm [%]"}, + /* 8 */ {"TPAG0", "Total precipitation anomaly of at least 0 mm [%]"}, + /* 9 */ {"STAG0", "Surface temperature anomaly of at least 0K [%]"}, + /* 10 */ {"MSLAG0", "Mean sea level pressure anomaly of at least 0 Pa [%]"}, + /* 11 */ {"var11", "undefined"}, + /* 12 */ {"var12", "undefined"}, + /* 13 */ {"var13", "undefined"}, + /* 14 */ {"var14", "undefined"}, + /* 15 */ {"H0DIP", "Heigth of 0 degree isotherm probability [percentage]"}, + /* 16 */ {"HSLP", "Heigth of snowfall limit probability [percentage]"}, + /* 17 */ {"SAIP", "Showalter index probability [percentage]"}, + /* 18 */ {"WHIP", "Whiting index probability [percentage]"}, + /* 19 */ {"var19", "undefined"}, + /* 20 */ {"TALM2K", "Temperature anomaly less than -2 K [%]"}, + /* 21 */ {"TAG2K", "Temperature anomaly of at least +2 K [%]"}, + /* 22 */ {"TALM8K", "Temperature anomaly less than -8 K [%]"}, + /* 23 */ {"TALM4K", "Temperature anomaly less than -4 K [%]"}, + /* 24 */ {"TAG4K", "Temperature anomaly greater than +4 K [%]"}, + /* 25 */ {"TAG8K", "Temperature anomaly greater than +8 K [%]"}, + /* 26 */ {"var26", "undefined"}, + /* 27 */ {"var27", "undefined"}, + /* 28 */ {"var28", "undefined"}, + /* 29 */ {"var29", "undefined"}, + /* 30 */ {"var30", "undefined"}, + /* 31 */ {"var31", "undefined"}, + /* 32 */ {"var32", "undefined"}, + /* 33 */ {"var33", "undefined"}, + /* 34 */ {"var34", "undefined"}, + /* 35 */ {"var35", "undefined"}, + /* 36 */ {"var36", "undefined"}, + /* 37 */ {"var37", "undefined"}, + /* 38 */ {"var38", "undefined"}, + /* 39 */ {"var39", "undefined"}, + /* 40 */ {"var40", "undefined"}, + /* 41 */ {"var41", "undefined"}, + /* 42 */ {"var42", "undefined"}, + /* 43 */ {"var43", "undefined"}, + /* 44 */ {"var44", "undefined"}, + /* 45 */ {"var45", "undefined"}, + /* 46 */ {"var46", "undefined"}, + /* 47 */ {"var47", "undefined"}, + /* 48 */ {"var48", "undefined"}, + /* 49 */ {"10GP", "10 metre wind gust probability [percentage]"}, + /* 50 */ {"var50", "undefined"}, + /* 51 */ {"var51", "undefined"}, + /* 52 */ {"var52", "undefined"}, + /* 53 */ {"var53", "undefined"}, + /* 54 */ {"var54", "undefined"}, + /* 55 */ {"var55", "undefined"}, + /* 56 */ {"var56", "undefined"}, + /* 57 */ {"var57", "undefined"}, + /* 58 */ {"var58", "undefined"}, + /* 59 */ {"CAPEP", "Convective available potential energy probability [percentage]"}, + /* 60 */ {"TPG1", "Total precipitation of at least 1 mm [%]"}, + /* 61 */ {"TPG5", "Total precipitation of at least 5 mm [%]"}, + /* 62 */ {"TPG10", "Total precipitation of at least 10 mm [%]"}, + /* 63 */ {"TPG20", "Total precipitation of at least 20 mm [%]"}, + /* 64 */ {"TPL01", "Total precipitation less than 0.1 mm [%]"}, + /* 65 */ {"TPRL1", "Total precipitation rate less than 1 mm per day [%]"}, + /* 66 */ {"TPRG3", "Total precipitation rate of at least 3 mm per day [%]"}, + /* 67 */ {"TPRG5", "Total precipitation rate of at least 5 mm per day [%]"}, + /* 68 */ {"10SPG10", "10 metre Wind speed of at least 10 metre per second [%]"}, + /* 69 */ {"10SPG15", "10 metre Wind speed of at least 15 metre per second [%]"}, + /* 70 */ {"10FGG15", "10 metre Wind gust of at least 15 metre per second [%]"}, + /* 71 */ {"10FGG20", "10 metre Wind gust of at least 20 metre per second [%]"}, + /* 72 */ {"10FGG25", "10 metre Wind gust of at least 25 metre per second [%]"}, + /* 73 */ {"2TL273", "2 metre temperature less than 273.15 K [%]"}, + /* 74 */ {"SWHG2", "Significant wave height of at least 2 m [%]"}, + /* 75 */ {"SWHG4", "Significant wave height of at least 4 m [%]"}, + /* 76 */ {"SWHG6", "Significant wave height of at least 6 m [%]"}, + /* 77 */ {"SWHG8", "Significant wave height of at least 8 m [%]"}, + /* 78 */ {"MWPG8", "Mean wave period of at least 8 s [%]"}, + /* 79 */ {"MWPG10", "Mean wave period of at least 10 s [%]"}, + /* 80 */ {"MWPG12", "Mean wave period of at least 12 s [%]"}, + /* 81 */ {"MWPG15", "Mean wave period of at least 15 s [%]"}, + /* 82 */ {"TPG40", "Total precipitation of at least 40 mm [%]"}, + /* 83 */ {"TPG60", "Total precipitation of at least 60 mm [%]"}, + /* 84 */ {"TPG80", "Total precipitation of at least 80 mm [%]"}, + /* 85 */ {"TPG100", "Total precipitation of at least 100 mm [%]"}, + /* 86 */ {"TPG150", "Total precipitation of at least 150 mm [%]"}, + /* 87 */ {"TPG200", "Total precipitation of at least 200 mm [%]"}, + /* 88 */ {"TPG300", "Total precipitation of at least 300 mm [%]"}, + /* 89 */ {"var89", "undefined"}, + /* 90 */ {"var90", "undefined"}, + /* 91 */ {"var91", "undefined"}, + /* 92 */ {"var92", "undefined"}, + /* 93 */ {"var93", "undefined"}, + /* 94 */ {"var94", "undefined"}, + /* 95 */ {"var95", "undefined"}, + /* 96 */ {"var96", "undefined"}, + /* 97 */ {"var97", "undefined"}, + /* 98 */ {"var98", "undefined"}, + /* 99 */ {"var99", "undefined"}, + /* 100 */ {"var100", "undefined"}, + /* 101 */ {"var101", "undefined"}, + /* 102 */ {"var102", "undefined"}, + /* 103 */ {"var103", "undefined"}, + /* 104 */ {"var104", "undefined"}, + /* 105 */ {"var105", "undefined"}, + /* 106 */ {"var106", "undefined"}, + /* 107 */ {"var107", "undefined"}, + /* 108 */ {"var108", "undefined"}, + /* 109 */ {"var109", "undefined"}, + /* 110 */ {"var110", "undefined"}, + /* 111 */ {"var111", "undefined"}, + /* 112 */ {"var112", "undefined"}, + /* 113 */ {"var113", "undefined"}, + /* 114 */ {"var114", "undefined"}, + /* 115 */ {"var115", "undefined"}, + /* 116 */ {"var116", "undefined"}, + /* 117 */ {"var117", "undefined"}, + /* 118 */ {"var118", "undefined"}, + /* 119 */ {"var119", "undefined"}, + /* 120 */ {"var120", "undefined"}, + /* 121 */ {"var121", "undefined"}, + /* 122 */ {"var122", "undefined"}, + /* 123 */ {"var123", "undefined"}, + /* 124 */ {"var124", "undefined"}, + /* 125 */ {"var125", "undefined"}, + /* 126 */ {"var126", "undefined"}, + /* 127 */ {"var127", "undefined"}, + /* 128 */ {"var128", "undefined"}, + /* 129 */ {"ZP", "Geopotential probability [%]"}, + /* 130 */ {"TAP", "Temperature anomaly probability [percentage]"}, + /* 131 */ {"var131", "undefined"}, + /* 132 */ {"var132", "undefined"}, + /* 133 */ {"var133", "undefined"}, + /* 134 */ {"var134", "undefined"}, + /* 135 */ {"var135", "undefined"}, + /* 136 */ {"var136", "undefined"}, + /* 137 */ {"var137", "undefined"}, + /* 138 */ {"var138", "undefined"}, + /* 139 */ {"var139", "2 metre temperature probability [%]"}, + /* 140 */ {"var140", "undefined"}, + /* 141 */ {"var141", "undefined"}, + /* 142 */ {"var142", "undefined"}, + /* 143 */ {"var143", "undefined"}, + /* 144 */ {"SFP", "Snowfall probability [percentage]"}, + /* 145 */ {"var145", "undefined"}, + /* 146 */ {"var146", "undefined"}, + /* 147 */ {"var147", "undefined"}, + /* 148 */ {"var148", "undefined"}, + /* 149 */ {"var149", "undefined"}, + /* 150 */ {"var150", "undefined"}, + /* 151 */ {"var151", "Total precipitation probability [%]"}, + /* 152 */ {"var152", "undefined"}, + /* 153 */ {"var153", "undefined"}, + /* 154 */ {"var154", "undefined"}, + /* 155 */ {"var155", "undefined"}, + /* 156 */ {"var156", "undefined"}, + /* 157 */ {"var157", "undefined"}, + /* 158 */ {"var158", "undefined"}, + /* 159 */ {"var159", "undefined"}, + /* 160 */ {"var160", "undefined"}, + /* 161 */ {"var161", "undefined"}, + /* 162 */ {"var162", "undefined"}, + /* 163 */ {"var163", "undefined"}, + /* 164 */ {"TCCP", "Total cloud cover probability [percentage]"}, + /* 165 */ {"10SP", "10 metre speed probability [percentage]"}, + /* 166 */ {"var166", "undefined"}, + /* 167 */ {"2TP", "2 metre temperature probability [percentage]"}, + /* 168 */ {"var168", "undefined"}, + /* 169 */ {"var169", "undefined"}, + /* 170 */ {"var170", "undefined"}, + /* 171 */ {"var171", "undefined"}, + /* 172 */ {"var172", "undefined"}, + /* 173 */ {"var173", "undefined"}, + /* 174 */ {"var174", "undefined"}, + /* 175 */ {"var175", "undefined"}, + /* 176 */ {"var176", "undefined"}, + /* 177 */ {"var177", "undefined"}, + /* 178 */ {"var178", "undefined"}, + /* 179 */ {"var179", "undefined"}, + /* 180 */ {"var180", "undefined"}, + /* 181 */ {"var181", "undefined"}, + /* 182 */ {"var182", "undefined"}, + /* 183 */ {"var183", "undefined"}, + /* 184 */ {"var184", "undefined"}, + /* 185 */ {"var185", "undefined"}, + /* 186 */ {"var186", "undefined"}, + /* 187 */ {"var187", "undefined"}, + /* 188 */ {"var188", "undefined"}, + /* 189 */ {"var189", "undefined"}, + /* 190 */ {"var190", "undefined"}, + /* 191 */ {"var191", "undefined"}, + /* 192 */ {"var192", "undefined"}, + /* 193 */ {"var193", "undefined"}, + /* 194 */ {"var194", "undefined"}, + /* 195 */ {"var195", "undefined"}, + /* 196 */ {"var196", "undefined"}, + /* 197 */ {"var197", "undefined"}, + /* 198 */ {"var198", "undefined"}, + /* 199 */ {"var199", "undefined"}, + /* 200 */ {"var200", "undefined"}, + /* 201 */ {"MX2TP", "Maximum 2 metre temperature probability [percentage]"}, + /* 202 */ {"MN2TP", "Minimum 2 metre temperature probability [percentage]"}, + /* 203 */ {"var203", "undefined"}, + /* 204 */ {"var204", "undefined"}, + /* 205 */ {"var205", "undefined"}, + /* 206 */ {"var206", "undefined"}, + /* 207 */ {"var207", "undefined"}, + /* 208 */ {"var208", "undefined"}, + /* 209 */ {"var209", "undefined"}, + /* 210 */ {"var210", "undefined"}, + /* 211 */ {"var211", "undefined"}, + /* 212 */ {"var212", "undefined"}, + /* 213 */ {"var213", "undefined"}, + /* 214 */ {"var214", "undefined"}, + /* 215 */ {"var215", "undefined"}, + /* 216 */ {"var216", "undefined"}, + /* 217 */ {"var217", "undefined"}, + /* 218 */ {"var218", "undefined"}, + /* 219 */ {"var219", "undefined"}, + /* 220 */ {"var220", "undefined"}, + /* 221 */ {"var221", "undefined"}, + /* 222 */ {"var222", "undefined"}, + /* 223 */ {"var223", "undefined"}, + /* 224 */ {"var224", "undefined"}, + /* 225 */ {"var225", "undefined"}, + /* 226 */ {"var226", "undefined"}, + /* 227 */ {"var227", "undefined"}, + /* 228 */ {"TPP", "Total precipitation probability [percentage]"}, + /* 229 */ {"SWHP", "Significant wave height probability [percentage]"}, + /* 230 */ {"var230", "undefined"}, + /* 231 */ {"var231", "undefined"}, + /* 232 */ {"MWPP", "Mean wave period probability [percentage]"}, + /* 233 */ {"var233", "undefined"}, + /* 234 */ {"var234", "undefined"}, + /* 235 */ {"var235", "undefined"}, + /* 236 */ {"var236", "undefined"}, + /* 237 */ {"var237", "undefined"}, + /* 238 */ {"var238", "undefined"}, + /* 239 */ {"var239", "undefined"}, + /* 240 */ {"var240", "undefined"}, + /* 241 */ {"var241", "undefined"}, + /* 242 */ {"var242", "undefined"}, + /* 243 */ {"var243", "undefined"}, + /* 244 */ {"var244", "undefined"}, + /* 245 */ {"var245", "undefined"}, + /* 246 */ {"var246", "undefined"}, + /* 247 */ {"var247", "undefined"}, + /* 248 */ {"var248", "undefined"}, + /* 249 */ {"var249", "undefined"}, + /* 250 */ {"var250", "undefined"}, + /* 251 */ {"var251", "undefined"}, + /* 252 */ {"var252", "undefined"}, + /* 253 */ {"var253", "undefined"}, + /* 254 */ {"var254", "undefined"}, + /* 255 */ {"var255", "Indicates a missing value []"}, +}; + +const struct ParmTable parm_table_ecmwf_132[256] = { + /* 0 */ {"var0", "undefined"}, + /* 1 */ {"var1", "undefined"}, + /* 2 */ {"var2", "undefined"}, + /* 3 */ {"var3", "undefined"}, + /* 4 */ {"var4", "undefined"}, + /* 5 */ {"var5", "undefined"}, + /* 6 */ {"var6", "undefined"}, + /* 7 */ {"var7", "undefined"}, + /* 8 */ {"var8", "undefined"}, + /* 9 */ {"var9", "undefined"}, + /* 10 */ {"var10", "undefined"}, + /* 11 */ {"var11", "undefined"}, + /* 12 */ {"var12", "undefined"}, + /* 13 */ {"var13", "undefined"}, + /* 14 */ {"var14", "undefined"}, + /* 15 */ {"var15", "undefined"}, + /* 16 */ {"var16", "undefined"}, + /* 17 */ {"var17", "undefined"}, + /* 18 */ {"var18", "undefined"}, + /* 19 */ {"var19", "undefined"}, + /* 20 */ {"var20", "undefined"}, + /* 21 */ {"var21", "undefined"}, + /* 22 */ {"var22", "undefined"}, + /* 23 */ {"var23", "undefined"}, + /* 24 */ {"var24", "undefined"}, + /* 25 */ {"var25", "undefined"}, + /* 26 */ {"var26", "undefined"}, + /* 27 */ {"var27", "undefined"}, + /* 28 */ {"var28", "undefined"}, + /* 29 */ {"var29", "undefined"}, + /* 30 */ {"var30", "undefined"}, + /* 31 */ {"var31", "undefined"}, + /* 32 */ {"var32", "undefined"}, + /* 33 */ {"var33", "undefined"}, + /* 34 */ {"var34", "undefined"}, + /* 35 */ {"var35", "undefined"}, + /* 36 */ {"var36", "undefined"}, + /* 37 */ {"var37", "undefined"}, + /* 38 */ {"var38", "undefined"}, + /* 39 */ {"var39", "undefined"}, + /* 40 */ {"var40", "undefined"}, + /* 41 */ {"var41", "undefined"}, + /* 42 */ {"var42", "undefined"}, + /* 43 */ {"var43", "undefined"}, + /* 44 */ {"var44", "undefined"}, + /* 45 */ {"var45", "undefined"}, + /* 46 */ {"var46", "undefined"}, + /* 47 */ {"var47", "undefined"}, + /* 48 */ {"var48", "undefined"}, + /* 49 */ {"10FGI", "10 metre wind gust index [(-1 to 1)]"}, + /* 50 */ {"var50", "undefined"}, + /* 51 */ {"var51", "undefined"}, + /* 52 */ {"var52", "undefined"}, + /* 53 */ {"var53", "undefined"}, + /* 54 */ {"var54", "undefined"}, + /* 55 */ {"var55", "undefined"}, + /* 56 */ {"var56", "undefined"}, + /* 57 */ {"var57", "undefined"}, + /* 58 */ {"var58", "undefined"}, + /* 59 */ {"var59", "undefined"}, + /* 60 */ {"var60", "undefined"}, + /* 61 */ {"var61", "undefined"}, + /* 62 */ {"var62", "undefined"}, + /* 63 */ {"var63", "undefined"}, + /* 64 */ {"var64", "undefined"}, + /* 65 */ {"var65", "undefined"}, + /* 66 */ {"var66", "undefined"}, + /* 67 */ {"var67", "undefined"}, + /* 68 */ {"var68", "undefined"}, + /* 69 */ {"var69", "undefined"}, + /* 70 */ {"var70", "undefined"}, + /* 71 */ {"var71", "undefined"}, + /* 72 */ {"var72", "undefined"}, + /* 73 */ {"var73", "undefined"}, + /* 74 */ {"var74", "undefined"}, + /* 75 */ {"var75", "undefined"}, + /* 76 */ {"var76", "undefined"}, + /* 77 */ {"var77", "undefined"}, + /* 78 */ {"var78", "undefined"}, + /* 79 */ {"var79", "undefined"}, + /* 80 */ {"var80", "undefined"}, + /* 81 */ {"var81", "undefined"}, + /* 82 */ {"var82", "undefined"}, + /* 83 */ {"var83", "undefined"}, + /* 84 */ {"var84", "undefined"}, + /* 85 */ {"var85", "undefined"}, + /* 86 */ {"var86", "undefined"}, + /* 87 */ {"var87", "undefined"}, + /* 88 */ {"var88", "undefined"}, + /* 89 */ {"var89", "undefined"}, + /* 90 */ {"var90", "undefined"}, + /* 91 */ {"var91", "undefined"}, + /* 92 */ {"var92", "undefined"}, + /* 93 */ {"var93", "undefined"}, + /* 94 */ {"var94", "undefined"}, + /* 95 */ {"var95", "undefined"}, + /* 96 */ {"var96", "undefined"}, + /* 97 */ {"var97", "undefined"}, + /* 98 */ {"var98", "undefined"}, + /* 99 */ {"var99", "undefined"}, + /* 100 */ {"var100", "undefined"}, + /* 101 */ {"var101", "undefined"}, + /* 102 */ {"var102", "undefined"}, + /* 103 */ {"var103", "undefined"}, + /* 104 */ {"var104", "undefined"}, + /* 105 */ {"var105", "undefined"}, + /* 106 */ {"var106", "undefined"}, + /* 107 */ {"var107", "undefined"}, + /* 108 */ {"var108", "undefined"}, + /* 109 */ {"var109", "undefined"}, + /* 110 */ {"var110", "undefined"}, + /* 111 */ {"var111", "undefined"}, + /* 112 */ {"var112", "undefined"}, + /* 113 */ {"var113", "undefined"}, + /* 114 */ {"var114", "undefined"}, + /* 115 */ {"var115", "undefined"}, + /* 116 */ {"var116", "undefined"}, + /* 117 */ {"var117", "undefined"}, + /* 118 */ {"var118", "undefined"}, + /* 119 */ {"var119", "undefined"}, + /* 120 */ {"var120", "undefined"}, + /* 121 */ {"var121", "undefined"}, + /* 122 */ {"var122", "undefined"}, + /* 123 */ {"var123", "undefined"}, + /* 124 */ {"var124", "undefined"}, + /* 125 */ {"var125", "undefined"}, + /* 126 */ {"var126", "undefined"}, + /* 127 */ {"var127", "undefined"}, + /* 128 */ {"var128", "undefined"}, + /* 129 */ {"var129", "undefined"}, + /* 130 */ {"var130", "undefined"}, + /* 131 */ {"var131", "undefined"}, + /* 132 */ {"var132", "undefined"}, + /* 133 */ {"var133", "undefined"}, + /* 134 */ {"var134", "undefined"}, + /* 135 */ {"var135", "undefined"}, + /* 136 */ {"var136", "undefined"}, + /* 137 */ {"var137", "undefined"}, + /* 138 */ {"var138", "undefined"}, + /* 139 */ {"var139", "undefined"}, + /* 140 */ {"var140", "undefined"}, + /* 141 */ {"var141", "undefined"}, + /* 142 */ {"var142", "undefined"}, + /* 143 */ {"var143", "undefined"}, + /* 144 */ {"SFI", "Snowfall index [(-1 to 1)]"}, + /* 145 */ {"var145", "undefined"}, + /* 146 */ {"var146", "undefined"}, + /* 147 */ {"var147", "undefined"}, + /* 148 */ {"var148", "undefined"}, + /* 149 */ {"var149", "undefined"}, + /* 150 */ {"var150", "undefined"}, + /* 151 */ {"var151", "undefined"}, + /* 152 */ {"var152", "undefined"}, + /* 153 */ {"var153", "undefined"}, + /* 154 */ {"var154", "undefined"}, + /* 155 */ {"var155", "undefined"}, + /* 156 */ {"var156", "undefined"}, + /* 157 */ {"var157", "undefined"}, + /* 158 */ {"var158", "undefined"}, + /* 159 */ {"var159", "undefined"}, + /* 160 */ {"var160", "undefined"}, + /* 161 */ {"var161", "undefined"}, + /* 162 */ {"var162", "undefined"}, + /* 163 */ {"var163", "undefined"}, + /* 164 */ {"var164", "undefined"}, + /* 165 */ {"10WSI", "10 metre speed index [(-1 to 1)]"}, + /* 166 */ {"var166", "undefined"}, + /* 167 */ {"2TI", "2 metre temperature index [(-1 to 1)]"}, + /* 168 */ {"var168", "undefined"}, + /* 169 */ {"var169", "undefined"}, + /* 170 */ {"var170", "undefined"}, + /* 171 */ {"var171", "undefined"}, + /* 172 */ {"var172", "undefined"}, + /* 173 */ {"var173", "undefined"}, + /* 174 */ {"var174", "undefined"}, + /* 175 */ {"var175", "undefined"}, + /* 176 */ {"var176", "undefined"}, + /* 177 */ {"var177", "undefined"}, + /* 178 */ {"var178", "undefined"}, + /* 179 */ {"var179", "undefined"}, + /* 180 */ {"var180", "undefined"}, + /* 181 */ {"var181", "undefined"}, + /* 182 */ {"var182", "undefined"}, + /* 183 */ {"var183", "undefined"}, + /* 184 */ {"var184", "undefined"}, + /* 185 */ {"var185", "undefined"}, + /* 186 */ {"var186", "undefined"}, + /* 187 */ {"var187", "undefined"}, + /* 188 */ {"var188", "undefined"}, + /* 189 */ {"var189", "undefined"}, + /* 190 */ {"var190", "undefined"}, + /* 191 */ {"var191", "undefined"}, + /* 192 */ {"var192", "undefined"}, + /* 193 */ {"var193", "undefined"}, + /* 194 */ {"var194", "undefined"}, + /* 195 */ {"var195", "undefined"}, + /* 196 */ {"var196", "undefined"}, + /* 197 */ {"var197", "undefined"}, + /* 198 */ {"var198", "undefined"}, + /* 199 */ {"var199", "undefined"}, + /* 200 */ {"MAXSWHI", "Maximum of significant wave height index [(-1 to 1)]"}, + /* 201 */ {"MX2TI", "Maximum temperature at 2 metres index [(-1 to 1)]"}, + /* 202 */ {"MN2TI", "Minimum temperature at 2 metres index [(-1 to 1)]"}, + /* 203 */ {"var203", "undefined"}, + /* 204 */ {"var204", "undefined"}, + /* 205 */ {"var205", "undefined"}, + /* 206 */ {"var206", "undefined"}, + /* 207 */ {"var207", "undefined"}, + /* 208 */ {"var208", "undefined"}, + /* 209 */ {"var209", "undefined"}, + /* 210 */ {"var210", "undefined"}, + /* 211 */ {"var211", "undefined"}, + /* 212 */ {"var212", "undefined"}, + /* 213 */ {"var213", "undefined"}, + /* 214 */ {"var214", "undefined"}, + /* 215 */ {"var215", "undefined"}, + /* 216 */ {"var216", "undefined"}, + /* 217 */ {"var217", "undefined"}, + /* 218 */ {"var218", "undefined"}, + /* 219 */ {"var219", "undefined"}, + /* 220 */ {"var220", "undefined"}, + /* 221 */ {"var221", "undefined"}, + /* 222 */ {"var222", "undefined"}, + /* 223 */ {"var223", "undefined"}, + /* 224 */ {"var224", "undefined"}, + /* 225 */ {"var225", "undefined"}, + /* 226 */ {"var226", "undefined"}, + /* 227 */ {"var227", "undefined"}, + /* 228 */ {"TPI", "Total precipitation index [(-1 to 1)]"}, + /* 229 */ {"var229", "undefined"}, + /* 230 */ {"var230", "undefined"}, + /* 231 */ {"var231", "undefined"}, + /* 232 */ {"var232", "undefined"}, + /* 233 */ {"var233", "undefined"}, + /* 234 */ {"var234", "undefined"}, + /* 235 */ {"var235", "undefined"}, + /* 236 */ {"var236", "undefined"}, + /* 237 */ {"var237", "undefined"}, + /* 238 */ {"var238", "undefined"}, + /* 239 */ {"var239", "undefined"}, + /* 240 */ {"var240", "undefined"}, + /* 241 */ {"var241", "undefined"}, + /* 242 */ {"var242", "undefined"}, + /* 243 */ {"var243", "undefined"}, + /* 244 */ {"var244", "undefined"}, + /* 245 */ {"var245", "undefined"}, + /* 246 */ {"var246", "undefined"}, + /* 247 */ {"var247", "undefined"}, + /* 248 */ {"var248", "undefined"}, + /* 249 */ {"var249", "undefined"}, + /* 250 */ {"var250", "undefined"}, + /* 251 */ {"var251", "undefined"}, + /* 252 */ {"var252", "undefined"}, + /* 253 */ {"var253", "undefined"}, + /* 254 */ {"var254", "undefined"}, + /* 255 */ {"var255", "Indicates a missing value []"}, +}; + +const struct ParmTable parm_table_ecmwf_133[256] = { + /* 0 */ {"var0", "undefined"}, + /* 1 */ {"2TPLM10", "2m temperature probability less than -10 C [%]"}, + /* 2 */ {"2TPLM5", "2m temperature probability less than -5 C [%]"}, + /* 3 */ {"2TPL0", "2m temperature probability less than 0 C [%]"}, + /* 4 */ {"2TPL5", "2m temperature probability less than 5 C [%]"}, + /* 5 */ {"2TPL10", "2m temperature probability less than 10 C [%]"}, + /* 6 */ {"2TPG25", "2m temperature probability greater than 25 C [%]"}, + /* 7 */ {"2TPG30", "2m temperature probability greater than 30 C [%]"}, + /* 8 */ {"2TPG35", "2m temperature probability greater than 35 C [%]"}, + /* 9 */ {"2TPG40", "2m temperature probability greater than 40 C [%]"}, + /* 10 */ {"2TPG45", "2m temperature probability greater than 45 C [%]"}, + /* 11 */ {"MN2TPLM10", "Minimum 2 metre temperature probability less than -10 C [%]"}, + /* 12 */ {"MN2TPLM5", "Minimum 2 metre temperature probability less than -5 C [%]"}, + /* 13 */ {"MN2TPL0", "Minimum 2 metre temperature probability less than 0 C [%]"}, + /* 14 */ {"MN2TPL5", "Minimum 2 metre temperature probability less than 5 C [%]"}, + /* 15 */ {"MN2TPL10", "Minimum 2 metre temperature probability less than 10 C [%]"}, + /* 16 */ {"MX2TPG25", "Maximum 2 metre temperature probability greater than 25 C [%]"}, + /* 17 */ {"MX2TPG30", "Maximum 2 metre temperature probability greater than 30 C [%]"}, + /* 18 */ {"MX2TPG35", "Maximum 2 metre temperature probability greater than 35 C [%]"}, + /* 19 */ {"MX2TPG40", "Maximum 2 metre temperature probability greater than 40 C [%]"}, + /* 20 */ {"MX2TPG45", "Maximum 2 metre temperature probability greater than 45 C [%]"}, + /* 21 */ {"10SPG10", "10 metre wind speed probability of at least 10 m/s [%]"}, + /* 22 */ {"10SPG15", "10 metre wind speed probability of at least 15 m/s [%]"}, + /* 23 */ {"10SPG20", "10 metre wind speed probability of at least 20 m/s [%]"}, + /* 24 */ {"10SPG35", "10 metre wind speed probability of at least 35 m/s [%]"}, + /* 25 */ {"10SPG50", "10 metre wind speed probability of at least 50 m/s [%]"}, + /* 26 */ {"10GPG20", "10 metre wind gust probability of at least 20 m/s [%]"}, + /* 27 */ {"10GPG35", "10 metre wind gust probability of at least 35 m/s [%]"}, + /* 28 */ {"10GPG50", "10 metre wind gust probability of at least 50 m/s [%]"}, + /* 29 */ {"10GPG75", "10 metre wind gust probability of at least 75 m/s [%]"}, + /* 30 */ {"10GPG100", "10 metre wind gust probability of at least 100 m/s [%]"}, + /* 31 */ {"TPPG1", "Total precipitation probability of at least 1 mm [%]"}, + /* 32 */ {"TPPG5", "Total precipitation probability of at least 5 mm [%]"}, + /* 33 */ {"TPPG10", "Total precipitation probability of at least 10 mm [%]"}, + /* 34 */ {"TPPG20", "Total precipitation probability of at least 20 mm [%]"}, + /* 35 */ {"TPPG40", "Total precipitation probability of at least 40 mm [%]"}, + /* 36 */ {"TPPG60", "Total precipitation probability of at least 60 mm [%]"}, + /* 37 */ {"TPPG80", "Total precipitation probability of at least 80 mm [%]"}, + /* 38 */ {"TPPG100", "Total precipitation probability of at least 100 mm [%]"}, + /* 39 */ {"TPPG150", "Total precipitation probability of at least 150 mm [%]"}, + /* 40 */ {"TPPG200", "Total precipitation probability of at least 200 mm [%]"}, + /* 41 */ {"TPPG300", "Total precipitation probability of at least 300 mm [%]"}, + /* 42 */ {"SFPG1", "Snowfall probability of at least 1 mm [%]"}, + /* 43 */ {"SFPG5", "Snowfall probability of at least 5 mm [%]"}, + /* 44 */ {"SFPG10", "Snowfall probability of at least 10 mm [%]"}, + /* 45 */ {"SFPG20", "Snowfall probability of at least 20 mm [%]"}, + /* 46 */ {"SFPG40", "Snowfall probability of at least 40 mm [%]"}, + /* 47 */ {"SFPG60", "Snowfall probability of at least 60 mm [%]"}, + /* 48 */ {"SFPG80", "Snowfall probability of at least 80 mm [%]"}, + /* 49 */ {"SFPG100", "Snowfall probability of at least 100 mm [%]"}, + /* 50 */ {"SFPG150", "Snowfall probability of at least 150 mm [%]"}, + /* 51 */ {"SFPG200", "Snowfall probability of at least 200 mm [%]"}, + /* 52 */ {"SFPG300", "Snowfall probability of at least 300 mm [%]"}, + /* 53 */ {"TCCPG10", "Total Cloud Cover probability greater than 10% [%]"}, + /* 54 */ {"TCCPG20", "Total Cloud Cover probability greater than 20% [%]"}, + /* 55 */ {"TCCPG30", "Total Cloud Cover probability greater than 30% [%]"}, + /* 56 */ {"TCCPG40", "Total Cloud Cover probability greater than 40% [%]"}, + /* 57 */ {"TCCPG50", "Total Cloud Cover probability greater than 50% [%]"}, + /* 58 */ {"TCCPG60", "Total Cloud Cover probability greater than 60% [%]"}, + /* 59 */ {"TCCPG70", "Total Cloud Cover probability greater than 70% [%]"}, + /* 60 */ {"TCCPG80", "Total Cloud Cover probability greater than 80% [%]"}, + /* 61 */ {"TCCPG90", "Total Cloud Cover probability greater than 90% [%]"}, + /* 62 */ {"TCCPG99", "Total Cloud Cover probability greater than 99% [%]"}, + /* 63 */ {"HCCPG10", "High Cloud Cover probability greater than 10% [%]"}, + /* 64 */ {"HCCPG20", "High Cloud Cover probability greater than 20% [%]"}, + /* 65 */ {"HCCPG30", "High Cloud Cover probability greater than 30% [%]"}, + /* 66 */ {"HCCPG40", "High Cloud Cover probability greater than 40% [%]"}, + /* 67 */ {"HCCPG50", "High Cloud Cover probability greater than 50% [%]"}, + /* 68 */ {"HCCPG60", "High Cloud Cover probability greater than 60% [%]"}, + /* 69 */ {"HCCPG70", "High Cloud Cover probability greater than 70% [%]"}, + /* 70 */ {"HCCPG80", "High Cloud Cover probability greater than 80% [%]"}, + /* 71 */ {"HCCPG90", "High Cloud Cover probability greater than 90% [%]"}, + /* 72 */ {"HCCPG99", "High Cloud Cover probability greater than 99% [%]"}, + /* 73 */ {"MCCPG10", "Medium Cloud Cover probability greater than 10% [%]"}, + /* 74 */ {"MCCPG20", "Medium Cloud Cover probability greater than 20% [%]"}, + /* 75 */ {"MCCPG30", "Medium Cloud Cover probability greater than 30% [%]"}, + /* 76 */ {"MCCPG40", "Medium Cloud Cover probability greater than 40% [%]"}, + /* 77 */ {"MCCPG50", "Medium Cloud Cover probability greater than 50% [%]"}, + /* 78 */ {"MCCPG60", "Medium Cloud Cover probability greater than 60% [%]"}, + /* 79 */ {"MCCPG70", "Medium Cloud Cover probability greater than 70% [%]"}, + /* 80 */ {"MCCPG80", "Medium Cloud Cover probability greater than 80% [%]"}, + /* 81 */ {"MCCPG90", "Medium Cloud Cover probability greater than 90% [%]"}, + /* 82 */ {"MCCPG99", "Medium Cloud Cover probability greater than 99% [%]"}, + /* 83 */ {"LCCPG10", "Low Cloud Cover probability greater than 10% [%]"}, + /* 84 */ {"LCCPG20", "Low Cloud Cover probability greater than 20% [%]"}, + /* 85 */ {"LCCPG30", "Low Cloud Cover probability greater than 30% [%]"}, + /* 86 */ {"LCCPG40", "Low Cloud Cover probability greater than 40% [%]"}, + /* 87 */ {"LCCPG50", "Low Cloud Cover probability greater than 50% [%]"}, + /* 88 */ {"LCCPG60", "Low Cloud Cover probability greater than 60% [%]"}, + /* 89 */ {"LCCPG70", "Low Cloud Cover probability greater than 70% [%]"}, + /* 90 */ {"LCCPG80", "Low Cloud Cover probability greater than 80% [%]"}, + /* 91 */ {"LCCPG90", "Low Cloud Cover probability greater than 90% [%]"}, + /* 92 */ {"LCCPG99", "Low Cloud Cover probability greater than 99% [%]"}, + /* 93 */ {"var93", "undefined"}, + /* 94 */ {"var94", "undefined"}, + /* 95 */ {"var95", "undefined"}, + /* 96 */ {"var96", "undefined"}, + /* 97 */ {"var97", "undefined"}, + /* 98 */ {"var98", "undefined"}, + /* 99 */ {"var99", "undefined"}, + /* 100 */ {"var100", "undefined"}, + /* 101 */ {"var101", "undefined"}, + /* 102 */ {"var102", "undefined"}, + /* 103 */ {"var103", "undefined"}, + /* 104 */ {"var104", "undefined"}, + /* 105 */ {"var105", "undefined"}, + /* 106 */ {"var106", "undefined"}, + /* 107 */ {"var107", "undefined"}, + /* 108 */ {"var108", "undefined"}, + /* 109 */ {"var109", "undefined"}, + /* 110 */ {"var110", "undefined"}, + /* 111 */ {"var111", "undefined"}, + /* 112 */ {"var112", "undefined"}, + /* 113 */ {"var113", "undefined"}, + /* 114 */ {"var114", "undefined"}, + /* 115 */ {"var115", "undefined"}, + /* 116 */ {"var116", "undefined"}, + /* 117 */ {"var117", "undefined"}, + /* 118 */ {"var118", "undefined"}, + /* 119 */ {"var119", "undefined"}, + /* 120 */ {"var120", "undefined"}, + /* 121 */ {"var121", "undefined"}, + /* 122 */ {"var122", "undefined"}, + /* 123 */ {"var123", "undefined"}, + /* 124 */ {"var124", "undefined"}, + /* 125 */ {"var125", "undefined"}, + /* 126 */ {"var126", "undefined"}, + /* 127 */ {"var127", "undefined"}, + /* 128 */ {"var128", "undefined"}, + /* 129 */ {"var129", "undefined"}, + /* 130 */ {"var130", "undefined"}, + /* 131 */ {"var131", "undefined"}, + /* 132 */ {"var132", "undefined"}, + /* 133 */ {"var133", "undefined"}, + /* 134 */ {"var134", "undefined"}, + /* 135 */ {"var135", "undefined"}, + /* 136 */ {"var136", "undefined"}, + /* 137 */ {"var137", "undefined"}, + /* 138 */ {"var138", "undefined"}, + /* 139 */ {"var139", "undefined"}, + /* 140 */ {"var140", "undefined"}, + /* 141 */ {"var141", "undefined"}, + /* 142 */ {"var142", "undefined"}, + /* 143 */ {"var143", "undefined"}, + /* 144 */ {"var144", "undefined"}, + /* 145 */ {"var145", "undefined"}, + /* 146 */ {"var146", "undefined"}, + /* 147 */ {"var147", "undefined"}, + /* 148 */ {"var148", "undefined"}, + /* 149 */ {"var149", "undefined"}, + /* 150 */ {"var150", "undefined"}, + /* 151 */ {"var151", "undefined"}, + /* 152 */ {"var152", "undefined"}, + /* 153 */ {"var153", "undefined"}, + /* 154 */ {"var154", "undefined"}, + /* 155 */ {"var155", "undefined"}, + /* 156 */ {"var156", "undefined"}, + /* 157 */ {"var157", "undefined"}, + /* 158 */ {"var158", "undefined"}, + /* 159 */ {"var159", "undefined"}, + /* 160 */ {"var160", "undefined"}, + /* 161 */ {"var161", "undefined"}, + /* 162 */ {"var162", "undefined"}, + /* 163 */ {"var163", "undefined"}, + /* 164 */ {"var164", "undefined"}, + /* 165 */ {"var165", "undefined"}, + /* 166 */ {"var166", "undefined"}, + /* 167 */ {"var167", "undefined"}, + /* 168 */ {"var168", "undefined"}, + /* 169 */ {"var169", "undefined"}, + /* 170 */ {"var170", "undefined"}, + /* 171 */ {"var171", "undefined"}, + /* 172 */ {"var172", "undefined"}, + /* 173 */ {"var173", "undefined"}, + /* 174 */ {"var174", "undefined"}, + /* 175 */ {"var175", "undefined"}, + /* 176 */ {"var176", "undefined"}, + /* 177 */ {"var177", "undefined"}, + /* 178 */ {"var178", "undefined"}, + /* 179 */ {"var179", "undefined"}, + /* 180 */ {"var180", "undefined"}, + /* 181 */ {"var181", "undefined"}, + /* 182 */ {"var182", "undefined"}, + /* 183 */ {"var183", "undefined"}, + /* 184 */ {"var184", "undefined"}, + /* 185 */ {"var185", "undefined"}, + /* 186 */ {"var186", "undefined"}, + /* 187 */ {"var187", "undefined"}, + /* 188 */ {"var188", "undefined"}, + /* 189 */ {"var189", "undefined"}, + /* 190 */ {"var190", "undefined"}, + /* 191 */ {"var191", "undefined"}, + /* 192 */ {"var192", "undefined"}, + /* 193 */ {"var193", "undefined"}, + /* 194 */ {"var194", "undefined"}, + /* 195 */ {"var195", "undefined"}, + /* 196 */ {"var196", "undefined"}, + /* 197 */ {"var197", "undefined"}, + /* 198 */ {"var198", "undefined"}, + /* 199 */ {"var199", "undefined"}, + /* 200 */ {"var200", "undefined"}, + /* 201 */ {"var201", "undefined"}, + /* 202 */ {"var202", "undefined"}, + /* 203 */ {"var203", "undefined"}, + /* 204 */ {"var204", "undefined"}, + /* 205 */ {"var205", "undefined"}, + /* 206 */ {"var206", "undefined"}, + /* 207 */ {"var207", "undefined"}, + /* 208 */ {"var208", "undefined"}, + /* 209 */ {"var209", "undefined"}, + /* 210 */ {"var210", "undefined"}, + /* 211 */ {"var211", "undefined"}, + /* 212 */ {"var212", "undefined"}, + /* 213 */ {"var213", "undefined"}, + /* 214 */ {"var214", "undefined"}, + /* 215 */ {"var215", "undefined"}, + /* 216 */ {"var216", "undefined"}, + /* 217 */ {"var217", "undefined"}, + /* 218 */ {"var218", "undefined"}, + /* 219 */ {"var219", "undefined"}, + /* 220 */ {"var220", "undefined"}, + /* 221 */ {"var221", "undefined"}, + /* 222 */ {"var222", "undefined"}, + /* 223 */ {"var223", "undefined"}, + /* 224 */ {"var224", "undefined"}, + /* 225 */ {"var225", "undefined"}, + /* 226 */ {"var226", "undefined"}, + /* 227 */ {"var227", "undefined"}, + /* 228 */ {"var228", "undefined"}, + /* 229 */ {"var229", "undefined"}, + /* 230 */ {"var230", "undefined"}, + /* 231 */ {"var231", "undefined"}, + /* 232 */ {"var232", "undefined"}, + /* 233 */ {"var233", "undefined"}, + /* 234 */ {"var234", "undefined"}, + /* 235 */ {"var235", "undefined"}, + /* 236 */ {"var236", "undefined"}, + /* 237 */ {"var237", "undefined"}, + /* 238 */ {"var238", "undefined"}, + /* 239 */ {"var239", "undefined"}, + /* 240 */ {"var240", "undefined"}, + /* 241 */ {"var241", "undefined"}, + /* 242 */ {"var242", "undefined"}, + /* 243 */ {"var243", "undefined"}, + /* 244 */ {"var244", "undefined"}, + /* 245 */ {"var245", "undefined"}, + /* 246 */ {"var246", "undefined"}, + /* 247 */ {"var247", "undefined"}, + /* 248 */ {"var248", "undefined"}, + /* 249 */ {"var249", "undefined"}, + /* 250 */ {"var250", "undefined"}, + /* 251 */ {"var251", "undefined"}, + /* 252 */ {"var252", "undefined"}, + /* 253 */ {"var253", "undefined"}, + /* 254 */ {"var254", "undefined"}, + /* 255 */ {"var255", "undefined"}, +}; + +const struct ParmTable parm_table_ecmwf_140[256] = { + /* 0 */ {"var0", "undefined"}, + /* 1 */ {"var1", "undefined"}, + /* 2 */ {"var2", "undefined"}, + /* 3 */ {"var3", "undefined"}, + /* 4 */ {"var4", "undefined"}, + /* 5 */ {"var5", "undefined"}, + /* 6 */ {"var6", "undefined"}, + /* 7 */ {"var7", "undefined"}, + /* 8 */ {"var8", "undefined"}, + /* 9 */ {"var9", "undefined"}, + /* 10 */ {"var10", "undefined"}, + /* 11 */ {"var11", "undefined"}, + /* 12 */ {"var12", "undefined"}, + /* 13 */ {"var13", "undefined"}, + /* 14 */ {"var14", "undefined"}, + /* 15 */ {"var15", "undefined"}, + /* 16 */ {"var16", "undefined"}, + /* 17 */ {"var17", "undefined"}, + /* 18 */ {"var18", "undefined"}, + /* 19 */ {"var19", "undefined"}, + /* 20 */ {"var20", "undefined"}, + /* 21 */ {"var21", "undefined"}, + /* 22 */ {"var22", "undefined"}, + /* 23 */ {"var23", "undefined"}, + /* 24 */ {"var24", "undefined"}, + /* 25 */ {"var25", "undefined"}, + /* 26 */ {"var26", "undefined"}, + /* 27 */ {"var27", "undefined"}, + /* 28 */ {"var28", "undefined"}, + /* 29 */ {"var29", "undefined"}, + /* 30 */ {"var30", "undefined"}, + /* 31 */ {"var31", "undefined"}, + /* 32 */ {"var32", "undefined"}, + /* 33 */ {"var33", "undefined"}, + /* 34 */ {"var34", "undefined"}, + /* 35 */ {"var35", "undefined"}, + /* 36 */ {"var36", "undefined"}, + /* 37 */ {"var37", "undefined"}, + /* 38 */ {"var38", "undefined"}, + /* 39 */ {"var39", "undefined"}, + /* 40 */ {"var40", "undefined"}, + /* 41 */ {"var41", "undefined"}, + /* 42 */ {"var42", "undefined"}, + /* 43 */ {"var43", "undefined"}, + /* 44 */ {"var44", "undefined"}, + /* 45 */ {"var45", "undefined"}, + /* 46 */ {"var46", "undefined"}, + /* 47 */ {"var47", "undefined"}, + /* 48 */ {"var48", "undefined"}, + /* 49 */ {"var49", "undefined"}, + /* 50 */ {"var50", "undefined"}, + /* 51 */ {"var51", "undefined"}, + /* 52 */ {"var52", "undefined"}, + /* 53 */ {"var53", "undefined"}, + /* 54 */ {"var54", "undefined"}, + /* 55 */ {"var55", "undefined"}, + /* 56 */ {"var56", "undefined"}, + /* 57 */ {"var57", "undefined"}, + /* 58 */ {"var58", "undefined"}, + /* 59 */ {"var59", "undefined"}, + /* 60 */ {"var60", "undefined"}, + /* 61 */ {"var61", "undefined"}, + /* 62 */ {"var62", "undefined"}, + /* 63 */ {"var63", "undefined"}, + /* 64 */ {"var64", "undefined"}, + /* 65 */ {"var65", "undefined"}, + /* 66 */ {"var66", "undefined"}, + /* 67 */ {"var67", "undefined"}, + /* 68 */ {"var68", "undefined"}, + /* 69 */ {"var69", "undefined"}, + /* 70 */ {"var70", "undefined"}, + /* 71 */ {"var71", "undefined"}, + /* 72 */ {"var72", "undefined"}, + /* 73 */ {"var73", "undefined"}, + /* 74 */ {"var74", "undefined"}, + /* 75 */ {"var75", "undefined"}, + /* 76 */ {"var76", "undefined"}, + /* 77 */ {"var77", "undefined"}, + /* 78 */ {"var78", "undefined"}, + /* 79 */ {"var79", "undefined"}, + /* 80 */ {"var80", "undefined"}, + /* 81 */ {"var81", "undefined"}, + /* 82 */ {"var82", "undefined"}, + /* 83 */ {"var83", "undefined"}, + /* 84 */ {"var84", "undefined"}, + /* 85 */ {"var85", "undefined"}, + /* 86 */ {"var86", "undefined"}, + /* 87 */ {"var87", "undefined"}, + /* 88 */ {"var88", "undefined"}, + /* 89 */ {"var89", "undefined"}, + /* 90 */ {"var90", "undefined"}, + /* 91 */ {"var91", "undefined"}, + /* 92 */ {"var92", "undefined"}, + /* 93 */ {"var93", "undefined"}, + /* 94 */ {"var94", "undefined"}, + /* 95 */ {"var95", "undefined"}, + /* 96 */ {"var96", "undefined"}, + /* 97 */ {"var97", "undefined"}, + /* 98 */ {"var98", "undefined"}, + /* 99 */ {"var99", "undefined"}, + /* 100 */ {"var100", "undefined"}, + /* 101 */ {"var101", "undefined"}, + /* 102 */ {"var102", "undefined"}, + /* 103 */ {"var103", "undefined"}, + /* 104 */ {"var104", "undefined"}, + /* 105 */ {"var105", "undefined"}, + /* 106 */ {"var106", "undefined"}, + /* 107 */ {"var107", "undefined"}, + /* 108 */ {"var108", "undefined"}, + /* 109 */ {"var109", "undefined"}, + /* 110 */ {"var110", "undefined"}, + /* 111 */ {"var111", "undefined"}, + /* 112 */ {"var112", "undefined"}, + /* 113 */ {"var113", "undefined"}, + /* 114 */ {"var114", "undefined"}, + /* 115 */ {"var115", "undefined"}, + /* 116 */ {"var116", "undefined"}, + /* 117 */ {"var117", "undefined"}, + /* 118 */ {"var118", "undefined"}, + /* 119 */ {"var119", "undefined"}, + /* 120 */ {"var120", "undefined"}, + /* 121 */ {"var121", "undefined"}, + /* 122 */ {"var122", "undefined"}, + /* 123 */ {"var123", "undefined"}, + /* 124 */ {"var124", "undefined"}, + /* 125 */ {"var125", "undefined"}, + /* 126 */ {"var126", "undefined"}, + /* 127 */ {"var127", "undefined"}, + /* 128 */ {"var128", "undefined"}, + /* 129 */ {"var129", "undefined"}, + /* 130 */ {"var130", "undefined"}, + /* 131 */ {"var131", "undefined"}, + /* 132 */ {"var132", "undefined"}, + /* 133 */ {"var133", "undefined"}, + /* 134 */ {"var134", "undefined"}, + /* 135 */ {"var135", "undefined"}, + /* 136 */ {"var136", "undefined"}, + /* 137 */ {"var137", "undefined"}, + /* 138 */ {"var138", "undefined"}, + /* 139 */ {"var139", "undefined"}, + /* 140 */ {"var140", "undefined"}, + /* 141 */ {"var141", "undefined"}, + /* 142 */ {"var142", "undefined"}, + /* 143 */ {"var143", "undefined"}, + /* 144 */ {"var144", "undefined"}, + /* 145 */ {"var145", "undefined"}, + /* 146 */ {"var146", "undefined"}, + /* 147 */ {"var147", "undefined"}, + /* 148 */ {"var148", "undefined"}, + /* 149 */ {"var149", "undefined"}, + /* 150 */ {"var150", "undefined"}, + /* 151 */ {"var151", "undefined"}, + /* 152 */ {"var152", "undefined"}, + /* 153 */ {"var153", "undefined"}, + /* 154 */ {"var154", "undefined"}, + /* 155 */ {"var155", "undefined"}, + /* 156 */ {"var156", "undefined"}, + /* 157 */ {"var157", "undefined"}, + /* 158 */ {"var158", "undefined"}, + /* 159 */ {"var159", "undefined"}, + /* 160 */ {"var160", "undefined"}, + /* 161 */ {"var161", "undefined"}, + /* 162 */ {"var162", "undefined"}, + /* 163 */ {"var163", "undefined"}, + /* 164 */ {"var164", "undefined"}, + /* 165 */ {"var165", "undefined"}, + /* 166 */ {"var166", "undefined"}, + /* 167 */ {"var167", "undefined"}, + /* 168 */ {"var168", "undefined"}, + /* 169 */ {"var169", "undefined"}, + /* 170 */ {"var170", "undefined"}, + /* 171 */ {"var171", "undefined"}, + /* 172 */ {"var172", "undefined"}, + /* 173 */ {"var173", "undefined"}, + /* 174 */ {"var174", "undefined"}, + /* 175 */ {"var175", "undefined"}, + /* 176 */ {"var176", "undefined"}, + /* 177 */ {"var177", "undefined"}, + /* 178 */ {"var178", "undefined"}, + /* 179 */ {"var179", "undefined"}, + /* 180 */ {"var180", "undefined"}, + /* 181 */ {"var181", "undefined"}, + /* 182 */ {"var182", "undefined"}, + /* 183 */ {"var183", "undefined"}, + /* 184 */ {"var184", "undefined"}, + /* 185 */ {"var185", "undefined"}, + /* 186 */ {"var186", "undefined"}, + /* 187 */ {"var187", "undefined"}, + /* 188 */ {"var188", "undefined"}, + /* 189 */ {"var189", "undefined"}, + /* 190 */ {"var190", "undefined"}, + /* 191 */ {"var191", "undefined"}, + /* 192 */ {"var192", "undefined"}, + /* 193 */ {"var193", "undefined"}, + /* 194 */ {"var194", "undefined"}, + /* 195 */ {"var195", "undefined"}, + /* 196 */ {"var196", "undefined"}, + /* 197 */ {"var197", "undefined"}, + /* 198 */ {"var198", "undefined"}, + /* 199 */ {"var199", "undefined"}, + /* 200 */ {"MAXSWH", "Maximum of significant wave height [m]"}, + /* 201 */ {"var201", "undefined"}, + /* 202 */ {"var202", "undefined"}, + /* 203 */ {"var203", "undefined"}, + /* 204 */ {"var204", "undefined"}, + /* 205 */ {"var205", "undefined"}, + /* 206 */ {"var206", "undefined"}, + /* 207 */ {"var207", "undefined"}, + /* 208 */ {"var208", "undefined"}, + /* 209 */ {"var209", "undefined"}, + /* 210 */ {"var210", "undefined"}, + /* 211 */ {"var211", "undefined"}, + /* 212 */ {"var212", "undefined"}, + /* 213 */ {"var213", "undefined"}, + /* 214 */ {"var214", "undefined"}, + /* 215 */ {"UST", "U-component stokes drift [m s**-1]"}, + /* 216 */ {"VST", "V-component stokes drift [m s**-1]"}, + /* 217 */ {"TMAX", "Period corresponding to maximum individual wave height [s]"}, + /* 218 */ {"HMAX", "Maximum individual wave height [m]"}, + /* 219 */ {"WMB", "Model bathymetry [m]"}, + /* 220 */ {"MP1", "Mean wave period based on first moment [s]"}, + /* 221 */ {"MP2", "Mean wave period based on second moment [s]"}, + /* 222 */ {"WDW", "Wave spectral directional width []"}, + /* 223 */ {"P1WW", "Mean wave period based on first moment for wind waves [s]"}, + /* 224 */ {"P2WW", "Mean wave period based on second moment for wind waves [s]"}, + /* 225 */ {"DWWW", "Wave spectral directional width for wind waves []"}, + /* 226 */ {"P1PS", "Mean wave period based on first moment for swell [s]"}, + /* 227 */ {"P2PS", "Mean wave period based on second moment for swell [s]"}, + /* 228 */ {"DWPS", "Wave spectral directional width for swell []"}, + /* 229 */ {"SWH", "Significant wave height [m]"}, + /* 230 */ {"MWD", "Mean wave direction [degrees]"}, + /* 231 */ {"PP1D", "Peak period of 1D spectra [s]"}, + /* 232 */ {"MWP", "Mean wave period [s]"}, + /* 233 */ {"CDWW", "Coefficient of drag with waves []"}, + /* 234 */ {"SHWW", "Significant height of wind waves [m]"}, + /* 235 */ {"MDWW", "Mean direction of wind waves [degrees]"}, + /* 236 */ {"MPWW", "Mean period of wind waves [s]"}, + /* 237 */ {"SHTS", "Significant height of total swell [m]"}, + /* 238 */ {"MDTS", "Mean direction of total swell [degrees]"}, + /* 239 */ {"MPTS", "Mean period of total swell [s]"}, + /* 240 */ {"SDHS", "Standard deviation wave height [m]"}, + /* 241 */ {"MU10", "Mean of 10 metre wind speed [m s**-1]"}, + /* 242 */ {"MDWI", "Mean wind direction [degrees]"}, + /* 243 */ {"SDU", "Standard deviation of 10 metre wind speed [m s**-1]"}, + /* 244 */ {"MSQS", "Mean square slope of waves [dimensionless]"}, + /* 245 */ {"WIND", "10 metre wind speed [m s**-1]"}, + /* 246 */ {"AWH", "Altimeter wave height [m]"}, + /* 247 */ {"ACWH", "Altimeter corrected wave height [m]"}, + /* 248 */ {"ARRC", "Altimeter range relative correction []"}, + /* 249 */ {"DWI", "10 metre wind direction [degrees]"}, + /* 250 */ {"2DSP", "2D wave spectra (multiple) [m**2 s radian**-1]"}, + /* 251 */ {"2DFD", "2D wave spectra (single) [m**2 s radian**-1]"}, + /* 252 */ {"WSK", "Wave spectral kurtosis []"}, + /* 253 */ {"BFI", "Benjamin-Feir index []"}, + /* 254 */ {"WSP", "Wave spectral peakedness [s**-1]"}, + /* 255 */ {"var255", "Indicates a missing value []"}, +}; + +const struct ParmTable parm_table_ecmwf_150[256] = { + /* 0 */ {"var0", "undefined"}, + /* 1 */ {"var1", "undefined"}, + /* 2 */ {"var2", "undefined"}, + /* 3 */ {"var3", "undefined"}, + /* 4 */ {"var4", "undefined"}, + /* 5 */ {"var5", "undefined"}, + /* 6 */ {"var6", "undefined"}, + /* 7 */ {"var7", "undefined"}, + /* 8 */ {"var8", "undefined"}, + /* 9 */ {"var9", "undefined"}, + /* 10 */ {"var10", "undefined"}, + /* 11 */ {"var11", "undefined"}, + /* 12 */ {"var12", "undefined"}, + /* 13 */ {"var13", "undefined"}, + /* 14 */ {"var14", "undefined"}, + /* 15 */ {"var15", "undefined"}, + /* 16 */ {"var16", "undefined"}, + /* 17 */ {"var17", "undefined"}, + /* 18 */ {"var18", "undefined"}, + /* 19 */ {"var19", "undefined"}, + /* 20 */ {"var20", "undefined"}, + /* 21 */ {"var21", "undefined"}, + /* 22 */ {"var22", "undefined"}, + /* 23 */ {"var23", "undefined"}, + /* 24 */ {"var24", "undefined"}, + /* 25 */ {"var25", "undefined"}, + /* 26 */ {"var26", "undefined"}, + /* 27 */ {"var27", "undefined"}, + /* 28 */ {"var28", "undefined"}, + /* 29 */ {"var29", "undefined"}, + /* 30 */ {"var30", "undefined"}, + /* 31 */ {"var31", "undefined"}, + /* 32 */ {"var32", "undefined"}, + /* 33 */ {"var33", "undefined"}, + /* 34 */ {"var34", "undefined"}, + /* 35 */ {"var35", "undefined"}, + /* 36 */ {"var36", "undefined"}, + /* 37 */ {"var37", "undefined"}, + /* 38 */ {"var38", "undefined"}, + /* 39 */ {"var39", "undefined"}, + /* 40 */ {"var40", "undefined"}, + /* 41 */ {"var41", "undefined"}, + /* 42 */ {"var42", "undefined"}, + /* 43 */ {"var43", "undefined"}, + /* 44 */ {"var44", "undefined"}, + /* 45 */ {"var45", "undefined"}, + /* 46 */ {"var46", "undefined"}, + /* 47 */ {"var47", "undefined"}, + /* 48 */ {"var48", "undefined"}, + /* 49 */ {"var49", "undefined"}, + /* 50 */ {"var50", "undefined"}, + /* 51 */ {"var51", "undefined"}, + /* 52 */ {"var52", "undefined"}, + /* 53 */ {"var53", "undefined"}, + /* 54 */ {"var54", "undefined"}, + /* 55 */ {"var55", "undefined"}, + /* 56 */ {"var56", "undefined"}, + /* 57 */ {"var57", "undefined"}, + /* 58 */ {"var58", "undefined"}, + /* 59 */ {"var59", "undefined"}, + /* 60 */ {"var60", "undefined"}, + /* 61 */ {"var61", "undefined"}, + /* 62 */ {"var62", "undefined"}, + /* 63 */ {"var63", "undefined"}, + /* 64 */ {"var64", "undefined"}, + /* 65 */ {"var65", "undefined"}, + /* 66 */ {"var66", "undefined"}, + /* 67 */ {"var67", "undefined"}, + /* 68 */ {"var68", "undefined"}, + /* 69 */ {"var69", "undefined"}, + /* 70 */ {"var70", "undefined"}, + /* 71 */ {"var71", "undefined"}, + /* 72 */ {"var72", "undefined"}, + /* 73 */ {"var73", "undefined"}, + /* 74 */ {"var74", "undefined"}, + /* 75 */ {"var75", "undefined"}, + /* 76 */ {"var76", "undefined"}, + /* 77 */ {"var77", "undefined"}, + /* 78 */ {"var78", "undefined"}, + /* 79 */ {"var79", "undefined"}, + /* 80 */ {"var80", "undefined"}, + /* 81 */ {"var81", "undefined"}, + /* 82 */ {"var82", "undefined"}, + /* 83 */ {"var83", "undefined"}, + /* 84 */ {"var84", "undefined"}, + /* 85 */ {"var85", "undefined"}, + /* 86 */ {"var86", "undefined"}, + /* 87 */ {"var87", "undefined"}, + /* 88 */ {"var88", "undefined"}, + /* 89 */ {"var89", "undefined"}, + /* 90 */ {"var90", "undefined"}, + /* 91 */ {"var91", "undefined"}, + /* 92 */ {"var92", "undefined"}, + /* 93 */ {"var93", "undefined"}, + /* 94 */ {"var94", "undefined"}, + /* 95 */ {"var95", "undefined"}, + /* 96 */ {"var96", "undefined"}, + /* 97 */ {"var97", "undefined"}, + /* 98 */ {"var98", "undefined"}, + /* 99 */ {"var99", "undefined"}, + /* 100 */ {"var100", "undefined"}, + /* 101 */ {"var101", "undefined"}, + /* 102 */ {"var102", "undefined"}, + /* 103 */ {"var103", "undefined"}, + /* 104 */ {"var104", "undefined"}, + /* 105 */ {"var105", "undefined"}, + /* 106 */ {"var106", "undefined"}, + /* 107 */ {"var107", "undefined"}, + /* 108 */ {"var108", "undefined"}, + /* 109 */ {"var109", "undefined"}, + /* 110 */ {"var110", "undefined"}, + /* 111 */ {"var111", "undefined"}, + /* 112 */ {"var112", "undefined"}, + /* 113 */ {"var113", "undefined"}, + /* 114 */ {"var114", "undefined"}, + /* 115 */ {"var115", "undefined"}, + /* 116 */ {"var116", "undefined"}, + /* 117 */ {"var117", "undefined"}, + /* 118 */ {"var118", "undefined"}, + /* 119 */ {"var119", "undefined"}, + /* 120 */ {"var120", "undefined"}, + /* 121 */ {"var121", "undefined"}, + /* 122 */ {"var122", "undefined"}, + /* 123 */ {"var123", "undefined"}, + /* 124 */ {"var124", "undefined"}, + /* 125 */ {"var125", "undefined"}, + /* 126 */ {"var126", "undefined"}, + /* 127 */ {"var127", "undefined"}, + /* 128 */ {"var128", "undefined"}, + /* 129 */ {"var129", "Ocean potential temperature [deg C]"}, + /* 130 */ {"var130", "Ocean salinity [psu]"}, + /* 131 */ {"var131", "Ocean potential density [kg m**-3 -1000]"}, + /* 132 */ {"var132", "undefined"}, + /* 133 */ {"var133", "Ocean U velocity [m s**-1]"}, + /* 134 */ {"var134", "Ocean V velocity [m s**-1]"}, + /* 135 */ {"var135", "Ocean W velocity [m s**-1]"}, + /* 136 */ {"var136", "undefined"}, + /* 137 */ {"var137", "Richardson number []"}, + /* 138 */ {"var138", "undefined"}, + /* 139 */ {"var139", "U*V product [m s**-2]"}, + /* 140 */ {"var140", "U*T product [m s**-1 deg C]"}, + /* 141 */ {"var141", "V*T product [m s**-1 deg C]"}, + /* 142 */ {"var142", "U*U product [m s**-2]"}, + /* 143 */ {"var143", "V*V product [m s**-2]"}, + /* 144 */ {"var144", "UV - U~V~ [m s**-2]"}, + /* 145 */ {"var145", "UT - U~T~ [m s**-1 deg C]"}, + /* 146 */ {"var146", "VT - V~T~ [m s**-1 deg C]"}, + /* 147 */ {"var147", "UU - U~U~ [m s**-2]"}, + /* 148 */ {"var148", "VV - V~V~ [m s**-2]"}, + /* 149 */ {"var149", "undefined"}, + /* 150 */ {"var150", "undefined"}, + /* 151 */ {"var151", "undefined"}, + /* 152 */ {"var152", "Sea level [m]"}, + /* 153 */ {"var153", "Barotropic stream function []"}, + /* 154 */ {"var154", "Mixed layer depth [m]"}, + /* 155 */ {"var155", "Depth [m]"}, + /* 156 */ {"var156", "undefined"}, + /* 157 */ {"var157", "undefined"}, + /* 158 */ {"var158", "undefined"}, + /* 159 */ {"var159", "undefined"}, + /* 160 */ {"var160", "undefined"}, + /* 161 */ {"var161", "undefined"}, + /* 162 */ {"var162", "undefined"}, + /* 163 */ {"var163", "undefined"}, + /* 164 */ {"var164", "undefined"}, + /* 165 */ {"var165", "undefined"}, + /* 166 */ {"var166", "undefined"}, + /* 167 */ {"var167", "undefined"}, + /* 168 */ {"var168", "U stress [Pa]"}, + /* 169 */ {"var169", "V stress [Pa]"}, + /* 170 */ {"var170", "Turbulent kinetic energy input []"}, + /* 171 */ {"var171", "Net surface heat flux []"}, + /* 172 */ {"var172", "Surface solar radiation []"}, + /* 173 */ {"var173", "P-E []"}, + /* 174 */ {"var174", "undefined"}, + /* 175 */ {"var175", "undefined"}, + /* 176 */ {"var176", "undefined"}, + /* 177 */ {"var177", "undefined"}, + /* 178 */ {"var178", "undefined"}, + /* 179 */ {"var179", "undefined"}, + /* 180 */ {"var180", "Diagnosed sea surface temperature error [deg C]"}, + /* 181 */ {"var181", "Heat flux correction [W m**-2]"}, + /* 182 */ {"var182", "Observed sea surface temperature [deg C]"}, + /* 183 */ {"var183", "Observed heat flux [W m**-2]"}, + /* 184 */ {"var184", "undefined"}, + /* 185 */ {"var185", "undefined"}, + /* 186 */ {"var186", "undefined"}, + /* 187 */ {"var187", "undefined"}, + /* 188 */ {"var188", "undefined"}, + /* 189 */ {"var189", "undefined"}, + /* 190 */ {"var190", "undefined"}, + /* 191 */ {"var191", "undefined"}, + /* 192 */ {"var192", "undefined"}, + /* 193 */ {"var193", "undefined"}, + /* 194 */ {"var194", "undefined"}, + /* 195 */ {"var195", "undefined"}, + /* 196 */ {"var196", "undefined"}, + /* 197 */ {"var197", "undefined"}, + /* 198 */ {"var198", "undefined"}, + /* 199 */ {"var199", "undefined"}, + /* 200 */ {"var200", "undefined"}, + /* 201 */ {"var201", "undefined"}, + /* 202 */ {"var202", "undefined"}, + /* 203 */ {"var203", "undefined"}, + /* 204 */ {"var204", "undefined"}, + /* 205 */ {"var205", "undefined"}, + /* 206 */ {"var206", "undefined"}, + /* 207 */ {"var207", "undefined"}, + /* 208 */ {"var208", "undefined"}, + /* 209 */ {"var209", "undefined"}, + /* 210 */ {"var210", "undefined"}, + /* 211 */ {"var211", "undefined"}, + /* 212 */ {"var212", "undefined"}, + /* 213 */ {"var213", "undefined"}, + /* 214 */ {"var214", "undefined"}, + /* 215 */ {"var215", "undefined"}, + /* 216 */ {"var216", "undefined"}, + /* 217 */ {"var217", "undefined"}, + /* 218 */ {"var218", "undefined"}, + /* 219 */ {"var219", "undefined"}, + /* 220 */ {"var220", "undefined"}, + /* 221 */ {"var221", "undefined"}, + /* 222 */ {"var222", "undefined"}, + /* 223 */ {"var223", "undefined"}, + /* 224 */ {"var224", "undefined"}, + /* 225 */ {"var225", "undefined"}, + /* 226 */ {"var226", "undefined"}, + /* 227 */ {"var227", "undefined"}, + /* 228 */ {"var228", "undefined"}, + /* 229 */ {"var229", "undefined"}, + /* 230 */ {"var230", "undefined"}, + /* 231 */ {"var231", "undefined"}, + /* 232 */ {"var232", "undefined"}, + /* 233 */ {"var233", "undefined"}, + /* 234 */ {"var234", "undefined"}, + /* 235 */ {"var235", "undefined"}, + /* 236 */ {"var236", "undefined"}, + /* 237 */ {"var237", "undefined"}, + /* 238 */ {"var238", "undefined"}, + /* 239 */ {"var239", "undefined"}, + /* 240 */ {"var240", "undefined"}, + /* 241 */ {"var241", "undefined"}, + /* 242 */ {"var242", "undefined"}, + /* 243 */ {"var243", "undefined"}, + /* 244 */ {"var244", "undefined"}, + /* 245 */ {"var245", "undefined"}, + /* 246 */ {"var246", "undefined"}, + /* 247 */ {"var247", "undefined"}, + /* 248 */ {"var248", "undefined"}, + /* 249 */ {"var249", "undefined"}, + /* 250 */ {"var250", "undefined"}, + /* 251 */ {"var251", "undefined"}, + /* 252 */ {"var252", "undefined"}, + /* 253 */ {"var253", "undefined"}, + /* 254 */ {"var254", "undefined"}, + /* 255 */ {"var255", "Indicates a missing value []"}, +}; + +const struct ParmTable parm_table_ecmwf_151[256] = { + /* 0 */ {"var0", "undefined"}, + /* 1 */ {"var1", "undefined"}, + /* 2 */ {"var2", "undefined"}, + /* 3 */ {"var3", "undefined"}, + /* 4 */ {"var4", "undefined"}, + /* 5 */ {"var5", "undefined"}, + /* 6 */ {"var6", "undefined"}, + /* 7 */ {"var7", "undefined"}, + /* 8 */ {"var8", "undefined"}, + /* 9 */ {"var9", "undefined"}, + /* 10 */ {"var10", "undefined"}, + /* 11 */ {"var11", "undefined"}, + /* 12 */ {"var12", "undefined"}, + /* 13 */ {"var13", "undefined"}, + /* 14 */ {"var14", "undefined"}, + /* 15 */ {"var15", "undefined"}, + /* 16 */ {"var16", "undefined"}, + /* 17 */ {"var17", "undefined"}, + /* 18 */ {"var18", "undefined"}, + /* 19 */ {"var19", "undefined"}, + /* 20 */ {"var20", "undefined"}, + /* 21 */ {"var21", "undefined"}, + /* 22 */ {"var22", "undefined"}, + /* 23 */ {"var23", "undefined"}, + /* 24 */ {"var24", "undefined"}, + /* 25 */ {"var25", "undefined"}, + /* 26 */ {"var26", "undefined"}, + /* 27 */ {"var27", "undefined"}, + /* 28 */ {"var28", "undefined"}, + /* 29 */ {"var29", "undefined"}, + /* 30 */ {"var30", "undefined"}, + /* 31 */ {"var31", "undefined"}, + /* 32 */ {"var32", "undefined"}, + /* 33 */ {"var33", "undefined"}, + /* 34 */ {"var34", "undefined"}, + /* 35 */ {"var35", "undefined"}, + /* 36 */ {"var36", "undefined"}, + /* 37 */ {"var37", "undefined"}, + /* 38 */ {"var38", "undefined"}, + /* 39 */ {"var39", "undefined"}, + /* 40 */ {"var40", "undefined"}, + /* 41 */ {"var41", "undefined"}, + /* 42 */ {"var42", "undefined"}, + /* 43 */ {"var43", "undefined"}, + /* 44 */ {"var44", "undefined"}, + /* 45 */ {"var45", "undefined"}, + /* 46 */ {"var46", "undefined"}, + /* 47 */ {"var47", "undefined"}, + /* 48 */ {"var48", "undefined"}, + /* 49 */ {"var49", "undefined"}, + /* 50 */ {"var50", "undefined"}, + /* 51 */ {"var51", "undefined"}, + /* 52 */ {"var52", "undefined"}, + /* 53 */ {"var53", "undefined"}, + /* 54 */ {"var54", "undefined"}, + /* 55 */ {"var55", "undefined"}, + /* 56 */ {"var56", "undefined"}, + /* 57 */ {"var57", "undefined"}, + /* 58 */ {"var58", "undefined"}, + /* 59 */ {"var59", "undefined"}, + /* 60 */ {"var60", "undefined"}, + /* 61 */ {"var61", "undefined"}, + /* 62 */ {"var62", "undefined"}, + /* 63 */ {"var63", "undefined"}, + /* 64 */ {"var64", "undefined"}, + /* 65 */ {"var65", "undefined"}, + /* 66 */ {"var66", "undefined"}, + /* 67 */ {"var67", "undefined"}, + /* 68 */ {"var68", "undefined"}, + /* 69 */ {"var69", "undefined"}, + /* 70 */ {"var70", "undefined"}, + /* 71 */ {"var71", "undefined"}, + /* 72 */ {"var72", "undefined"}, + /* 73 */ {"var73", "undefined"}, + /* 74 */ {"var74", "undefined"}, + /* 75 */ {"var75", "undefined"}, + /* 76 */ {"var76", "undefined"}, + /* 77 */ {"var77", "undefined"}, + /* 78 */ {"var78", "undefined"}, + /* 79 */ {"var79", "undefined"}, + /* 80 */ {"var80", "undefined"}, + /* 81 */ {"var81", "undefined"}, + /* 82 */ {"var82", "undefined"}, + /* 83 */ {"var83", "undefined"}, + /* 84 */ {"var84", "undefined"}, + /* 85 */ {"var85", "undefined"}, + /* 86 */ {"var86", "undefined"}, + /* 87 */ {"var87", "undefined"}, + /* 88 */ {"var88", "undefined"}, + /* 89 */ {"var89", "undefined"}, + /* 90 */ {"var90", "undefined"}, + /* 91 */ {"var91", "undefined"}, + /* 92 */ {"var92", "undefined"}, + /* 93 */ {"var93", "undefined"}, + /* 94 */ {"var94", "undefined"}, + /* 95 */ {"var95", "undefined"}, + /* 96 */ {"var96", "undefined"}, + /* 97 */ {"var97", "undefined"}, + /* 98 */ {"var98", "undefined"}, + /* 99 */ {"var99", "undefined"}, + /* 100 */ {"var100", "undefined"}, + /* 101 */ {"var101", "undefined"}, + /* 102 */ {"var102", "undefined"}, + /* 103 */ {"var103", "undefined"}, + /* 104 */ {"var104", "undefined"}, + /* 105 */ {"var105", "undefined"}, + /* 106 */ {"var106", "undefined"}, + /* 107 */ {"var107", "undefined"}, + /* 108 */ {"var108", "undefined"}, + /* 109 */ {"var109", "undefined"}, + /* 110 */ {"var110", "undefined"}, + /* 111 */ {"var111", "undefined"}, + /* 112 */ {"var112", "undefined"}, + /* 113 */ {"var113", "undefined"}, + /* 114 */ {"var114", "undefined"}, + /* 115 */ {"var115", "undefined"}, + /* 116 */ {"var116", "undefined"}, + /* 117 */ {"var117", "undefined"}, + /* 118 */ {"var118", "undefined"}, + /* 119 */ {"var119", "undefined"}, + /* 120 */ {"var120", "undefined"}, + /* 121 */ {"var121", "undefined"}, + /* 122 */ {"var122", "undefined"}, + /* 123 */ {"var123", "undefined"}, + /* 124 */ {"var124", "undefined"}, + /* 125 */ {"var125", "undefined"}, + /* 126 */ {"var126", "undefined"}, + /* 127 */ {"var127", "undefined"}, + /* 128 */ {"var128", "In situ Temperature [deg C]"}, + /* 129 */ {"OCPT", "Ocean potential temperature [deg C]"}, + /* 130 */ {"S", "Salinity [psu]"}, + /* 131 */ {"OCU", "Ocean current zonal component [m s**-1]"}, + /* 132 */ {"OCV", "Ocean current meridional component [m s**-1]"}, + /* 133 */ {"OCW", "Ocean current vertical component [m s**-1]"}, + /* 134 */ {"MST", "Modulus of strain rate tensor [s**-1]"}, + /* 135 */ {"VVS", "Vertical viscosity [m**2 s**-1]"}, + /* 136 */ {"VDF", "Vertical diffusivity [m**2 s**-1]"}, + /* 137 */ {"DEP", "Bottom level Depth [m]"}, + /* 138 */ {"STH", "Sigma-theta [kg m**-3]"}, + /* 139 */ {"RN", "Richardson number []"}, + /* 140 */ {"UV", "UV product [m**2 s**-2]"}, + /* 141 */ {"UT", "UT product [m s**-1 degC]"}, + /* 142 */ {"VT", "VT product [m s**-1 deg C]"}, + /* 143 */ {"UU", "UU product [m**2 s**-2]"}, + /* 144 */ {"VV", "VV product [m**2 s**-2]"}, + /* 145 */ {"SL", "Sea level [m]"}, + /* 146 */ {"SL_1", "Sea level previous timestep [m]"}, + /* 147 */ {"BSF", "Barotropic stream function [m**3 s**-1]"}, + /* 148 */ {"MLD", "Mixed layer depth [m]"}, + /* 149 */ {"BTP", "Bottom Pressure (equivalent height) [m]"}, + /* 150 */ {"SH", "Steric height [m]"}, + /* 151 */ {"CRL", "Curl of Wind Stress [N m**-3]"}, + /* 152 */ {"var152", "Divergence of wind stress [Nm**-3]"}, + /* 153 */ {"TAX", "U stress [N m**-2]"}, + /* 154 */ {"TAY", "V stress [N m**-2]"}, + /* 155 */ {"TKI", "Turbulent kinetic energy input [W m**-2]"}, + /* 156 */ {"NSF", "Net surface heat flux [W m**-2]"}, + /* 157 */ {"ASR", "Absorbed solar radiation [W m**-2]"}, + /* 158 */ {"PME", "Precipitation - evaporation [m s**-1]"}, + /* 159 */ {"SST", "Specified sea surface temperature [deg C]"}, + /* 160 */ {"SHF", "Specified surface heat flux [W m**-2]"}, + /* 161 */ {"DTE", "Diagnosed sea surface temperature error [deg C]"}, + /* 162 */ {"HFC", "Heat flux correction [W m**-2]"}, + /* 163 */ {"20D", "20 degrees isotherm depth [m]"}, + /* 164 */ {"TAV300", "Average potential temperature in the upper 300m [degrees C]"}, + /* 165 */ {"UBA1", "Vertically integrated zonal velocity (previous time step) [m**2 s**-1]"}, + /* 166 */ {"VBA1", "Vertically Integrated meridional velocity (previous time step) [m**2 s**-1]"}, + /* 167 */ {"ZTR", "Vertically integrated zonal volume transport [m**2 s**-1]"}, + /* 168 */ {"MTR", "Vertically integrated meridional volume transport [m**2 s**-1]"}, + /* 169 */ {"ZHT", "Vertically integrated zonal heat transport [J m**-1 s**-1]"}, + /* 170 */ {"MHT", "Vertically integrated meridional heat transport [J m**-1 s**-1]"}, + /* 171 */ {"UMAX", "U velocity maximum [m s**-1]"}, + /* 172 */ {"DUMAX", "Depth of the velocity maximum [m]"}, + /* 173 */ {"SMAX", "Salinity maximum [psu]"}, + /* 174 */ {"DSMAX", "Depth of salinity maximum [m]"}, + /* 175 */ {"SAV300", "Average salinity in the upper 300m [psu]"}, + /* 176 */ {"LDP", "Layer Thickness at scalar points [m]"}, + /* 177 */ {"LDU", "Layer Thickness at vector points [m]"}, + /* 178 */ {"PTI", "Potential temperature increment [deg C]"}, + /* 179 */ {"PTAE", "Potential temperature analysis error [deg C]"}, + /* 180 */ {"BPT", "Background potential temperature [deg C]"}, + /* 181 */ {"APT", "Analysed potential temperature [deg C]"}, + /* 182 */ {"PTBE", "Potential temperature background error [deg C]"}, + /* 183 */ {"AS", "Analysed salinity [psu]"}, + /* 184 */ {"SALI", "Salinity increment [psu]"}, + /* 185 */ {"EBT", "Estimated Bias in Temperature [deg C]"}, + /* 186 */ {"EBS", "Estimated Bias in Salinity [psu]"}, + /* 187 */ {"UVI", "Zonal Velocity increment (from balance operator) [m/s per time step]"}, + /* 188 */ {"VVI", "Meridional Velocity increment (from balance operator) []"}, + /* 189 */ {"var189", "undefined"}, + /* 190 */ {"SUBI", "Salinity increment (from salinity data) [psu per time step]"}, + /* 191 */ {"SALE", "Salinity analysis error [psu]"}, + /* 192 */ {"BSAL", "Background Salinity [psu]"}, + /* 193 */ {"var193", "Reserved []"}, + /* 194 */ {"SALBE", "Salinity background error [psu]"}, + /* 195 */ {"var195", "undefined"}, + /* 196 */ {"var196", "undefined"}, + /* 197 */ {"var197", "undefined"}, + /* 198 */ {"var198", "undefined"}, + /* 199 */ {"EBTA", "Estimated temperature bias from assimilation [deg C]"}, + /* 200 */ {"EBSA", "Estimated salinity bias from assimilation [psu]"}, + /* 201 */ {"LTI", "Temperature increment from relaxation term [deg C per time step]"}, + /* 202 */ {"LSI", "Salinity increment from relaxation term []"}, + /* 203 */ {"BZPGA", "Bias in the zonal pressure gradient (applied) [Pa**m-1]"}, + /* 204 */ {"BMPGA", "Bias in the meridional pressure gradient (applied) [Pa**m-1]"}, + /* 205 */ {"EBTL", "Estimated temperature bias from relaxation [deg C]"}, + /* 206 */ {"EBSL", "Estimated salinity bias from relaxation [psu]"}, + /* 207 */ {"FGBT", "First guess bias in temperature [deg C]"}, + /* 208 */ {"FGBS", "First guess bias in salinity [psu]"}, + /* 209 */ {"BPA", "Applied bias in pressure [Pa]"}, + /* 210 */ {"FGBP", "FG bias in pressure [Pa]"}, + /* 211 */ {"PTA", "Bias in temperature(applied) [deg C]"}, + /* 212 */ {"PSA", "Bias in salinity (applied) [psu]"}, + /* 213 */ {"var213", "undefined"}, + /* 214 */ {"var214", "undefined"}, + /* 215 */ {"var215", "undefined"}, + /* 216 */ {"var216", "undefined"}, + /* 217 */ {"var217", "undefined"}, + /* 218 */ {"var218", "undefined"}, + /* 219 */ {"var219", "undefined"}, + /* 220 */ {"var220", "undefined"}, + /* 221 */ {"var221", "undefined"}, + /* 222 */ {"var222", "undefined"}, + /* 223 */ {"var223", "undefined"}, + /* 224 */ {"var224", "undefined"}, + /* 225 */ {"var225", "undefined"}, + /* 226 */ {"var226", "undefined"}, + /* 227 */ {"var227", "undefined"}, + /* 228 */ {"var228", "undefined"}, + /* 229 */ {"var229", "undefined"}, + /* 230 */ {"var230", "undefined"}, + /* 231 */ {"var231", "undefined"}, + /* 232 */ {"var232", "undefined"}, + /* 233 */ {"var233", "undefined"}, + /* 234 */ {"var234", "undefined"}, + /* 235 */ {"var235", "undefined"}, + /* 236 */ {"var236", "undefined"}, + /* 237 */ {"var237", "undefined"}, + /* 238 */ {"var238", "undefined"}, + /* 239 */ {"var239", "undefined"}, + /* 240 */ {"var240", "undefined"}, + /* 241 */ {"var241", "undefined"}, + /* 242 */ {"var242", "undefined"}, + /* 243 */ {"var243", "undefined"}, + /* 244 */ {"var244", "undefined"}, + /* 245 */ {"var245", "undefined"}, + /* 246 */ {"var246", "undefined"}, + /* 247 */ {"var247", "undefined"}, + /* 248 */ {"var248", "undefined"}, + /* 249 */ {"var249", "undefined"}, + /* 250 */ {"var250", "undefined"}, + /* 251 */ {"var251", "undefined"}, + /* 252 */ {"var252", "undefined"}, + /* 253 */ {"var253", "undefined"}, + /* 254 */ {"var254", "undefined"}, + /* 255 */ {"var255", " []"}, +}; + +const struct ParmTable parm_table_ecmwf_160[256] = { + /* 0 */ {"var0", "undefined"}, + /* 1 */ {"var1", "undefined"}, + /* 2 */ {"var2", "undefined"}, + /* 3 */ {"var3", "undefined"}, + /* 4 */ {"var4", "undefined"}, + /* 5 */ {"var5", "undefined"}, + /* 6 */ {"var6", "undefined"}, + /* 7 */ {"var7", "undefined"}, + /* 8 */ {"var8", "undefined"}, + /* 9 */ {"var9", "undefined"}, + /* 10 */ {"var10", "undefined"}, + /* 11 */ {"var11", "undefined"}, + /* 12 */ {"var12", "undefined"}, + /* 13 */ {"var13", "undefined"}, + /* 14 */ {"var14", "undefined"}, + /* 15 */ {"var15", "undefined"}, + /* 16 */ {"var16", "undefined"}, + /* 17 */ {"var17", "undefined"}, + /* 18 */ {"var18", "undefined"}, + /* 19 */ {"var19", "undefined"}, + /* 20 */ {"var20", "undefined"}, + /* 21 */ {"var21", "undefined"}, + /* 22 */ {"var22", "undefined"}, + /* 23 */ {"var23", "undefined"}, + /* 24 */ {"var24", "undefined"}, + /* 25 */ {"var25", "undefined"}, + /* 26 */ {"var26", "undefined"}, + /* 27 */ {"var27", "undefined"}, + /* 28 */ {"var28", "undefined"}, + /* 29 */ {"var29", "undefined"}, + /* 30 */ {"var30", "undefined"}, + /* 31 */ {"var31", "undefined"}, + /* 32 */ {"var32", "undefined"}, + /* 33 */ {"var33", "undefined"}, + /* 34 */ {"var34", "undefined"}, + /* 35 */ {"var35", "undefined"}, + /* 36 */ {"var36", "undefined"}, + /* 37 */ {"var37", "undefined"}, + /* 38 */ {"var38", "undefined"}, + /* 39 */ {"var39", "undefined"}, + /* 40 */ {"var40", "undefined"}, + /* 41 */ {"var41", "undefined"}, + /* 42 */ {"var42", "undefined"}, + /* 43 */ {"var43", "undefined"}, + /* 44 */ {"var44", "undefined"}, + /* 45 */ {"var45", "undefined"}, + /* 46 */ {"var46", "undefined"}, + /* 47 */ {"var47", "undefined"}, + /* 48 */ {"var48", "undefined"}, + /* 49 */ {"10FG", "10 metre wind gust during averaging time [m s**-1]"}, + /* 50 */ {"var50", "undefined"}, + /* 51 */ {"var51", "undefined"}, + /* 52 */ {"var52", "undefined"}, + /* 53 */ {"var53", "undefined"}, + /* 54 */ {"var54", "undefined"}, + /* 55 */ {"var55", "undefined"}, + /* 56 */ {"var56", "undefined"}, + /* 57 */ {"var57", "undefined"}, + /* 58 */ {"var58", "undefined"}, + /* 59 */ {"var59", "undefined"}, + /* 60 */ {"var60", "undefined"}, + /* 61 */ {"var61", "undefined"}, + /* 62 */ {"var62", "undefined"}, + /* 63 */ {"var63", "undefined"}, + /* 64 */ {"var64", "undefined"}, + /* 65 */ {"var65", "undefined"}, + /* 66 */ {"var66", "undefined"}, + /* 67 */ {"var67", "undefined"}, + /* 68 */ {"var68", "undefined"}, + /* 69 */ {"var69", "undefined"}, + /* 70 */ {"var70", "undefined"}, + /* 71 */ {"var71", "undefined"}, + /* 72 */ {"var72", "undefined"}, + /* 73 */ {"var73", "undefined"}, + /* 74 */ {"var74", "undefined"}, + /* 75 */ {"var75", "undefined"}, + /* 76 */ {"var76", "undefined"}, + /* 77 */ {"var77", "undefined"}, + /* 78 */ {"var78", "undefined"}, + /* 79 */ {"var79", "undefined"}, + /* 80 */ {"var80", "undefined"}, + /* 81 */ {"var81", "undefined"}, + /* 82 */ {"var82", "undefined"}, + /* 83 */ {"var83", "undefined"}, + /* 84 */ {"var84", "undefined"}, + /* 85 */ {"var85", "undefined"}, + /* 86 */ {"var86", "undefined"}, + /* 87 */ {"var87", "undefined"}, + /* 88 */ {"var88", "undefined"}, + /* 89 */ {"var89", "undefined"}, + /* 90 */ {"var90", "undefined"}, + /* 91 */ {"var91", "undefined"}, + /* 92 */ {"var92", "undefined"}, + /* 93 */ {"var93", "undefined"}, + /* 94 */ {"var94", "undefined"}, + /* 95 */ {"var95", "undefined"}, + /* 96 */ {"var96", "undefined"}, + /* 97 */ {"var97", "undefined"}, + /* 98 */ {"var98", "undefined"}, + /* 99 */ {"var99", "undefined"}, + /* 100 */ {"var100", "undefined"}, + /* 101 */ {"var101", "undefined"}, + /* 102 */ {"var102", "undefined"}, + /* 103 */ {"var103", "undefined"}, + /* 104 */ {"var104", "undefined"}, + /* 105 */ {"var105", "undefined"}, + /* 106 */ {"var106", "undefined"}, + /* 107 */ {"var107", "undefined"}, + /* 108 */ {"var108", "undefined"}, + /* 109 */ {"var109", "undefined"}, + /* 110 */ {"var110", "undefined"}, + /* 111 */ {"var111", "undefined"}, + /* 112 */ {"var112", "undefined"}, + /* 113 */ {"var113", "undefined"}, + /* 114 */ {"var114", "undefined"}, + /* 115 */ {"var115", "undefined"}, + /* 116 */ {"var116", "undefined"}, + /* 117 */ {"var117", "undefined"}, + /* 118 */ {"var118", "undefined"}, + /* 119 */ {"var119", "undefined"}, + /* 120 */ {"var120", "undefined"}, + /* 121 */ {"var121", "undefined"}, + /* 122 */ {"var122", "undefined"}, + /* 123 */ {"var123", "undefined"}, + /* 124 */ {"var124", "undefined"}, + /* 125 */ {"var125", "undefined"}, + /* 126 */ {"var126", "undefined"}, + /* 127 */ {"AT", "Atmospheric tide []"}, + /* 128 */ {"BV", "Budget values []"}, + /* 129 */ {"Z", "Geopotential [m**2 s**-2]"}, + /* 130 */ {"T", "Temperature [K]"}, + /* 131 */ {"U", "U velocity [m s**-1]"}, + /* 132 */ {"V", "V velocity [m s**-1]"}, + /* 133 */ {"Q", "Specific humidity [kg kg**-1]"}, + /* 134 */ {"SP", "Surface pressure [Pa]"}, + /* 135 */ {"W", "Vertical velocity [Pa s**-1]"}, + /* 136 */ {"TCW", "Total column water [kg m**-2]"}, + /* 137 */ {"PWC", "Precipitable water content [kg m**-2]"}, + /* 138 */ {"VO", "Vorticity (relative) [s**-1]"}, + /* 139 */ {"STL1", "Soil temperature level 1 [K]"}, + /* 140 */ {"SWL1", "Soil wetness level 1 [m]"}, + /* 141 */ {"SD", "Snow depth [m of water]"}, + /* 142 */ {"LSP", "Large-scale precipitation [kg m**-2 s**-1]"}, + /* 143 */ {"CP", "Convective precipitation [kg m**-2 s**-1]"}, + /* 144 */ {"SF", "Snowfall [kg m**-2 s**-1]"}, + /* 145 */ {"BLD", "Boundary layer dissipation [W m**-2]"}, + /* 146 */ {"SSHF", "Surface sensible heat flux [W m**-2]"}, + /* 147 */ {"SLHF", "Surface latent heat flux [W m**-2]"}, + /* 148 */ {"var148", "undefined"}, + /* 149 */ {"var149", "undefined"}, + /* 150 */ {"var150", "undefined"}, + /* 151 */ {"MSL", "Mean sea level pressure [Pa]"}, + /* 152 */ {"LNSP", "Logarithm of surface pressure []"}, + /* 153 */ {"var153", "undefined"}, + /* 154 */ {"var154", "undefined"}, + /* 155 */ {"D", "Divergence [s**-1]"}, + /* 156 */ {"GH", "Height [m]"}, + /* 157 */ {"R", "Relative humidity [(0 - 1)]"}, + /* 158 */ {"TSP", "Tendency of surface pressure [Pa s**-1]"}, + /* 159 */ {"var159", "undefined"}, + /* 160 */ {"var160", "undefined"}, + /* 161 */ {"var161", "undefined"}, + /* 162 */ {"var162", "undefined"}, + /* 163 */ {"var163", "undefined"}, + /* 164 */ {"TCC", "Total cloud cover [(0 - 1)]"}, + /* 165 */ {"10U", "10 metre U wind component [m s**-1]"}, + /* 166 */ {"10V", "10 metre V wind component [m s**-1]"}, + /* 167 */ {"2T", "2 metre temperature [K]"}, + /* 168 */ {"2D", "2 metre dewpoint temperature [K]"}, + /* 169 */ {"var169", "undefined"}, + /* 170 */ {"STL2", "Soil temperature level 2 [K]"}, + /* 171 */ {"SWL2", "Soil wetness level 2 [m]"}, + /* 172 */ {"LSM", "Land-sea mask [(0 - 1)]"}, + /* 173 */ {"SR", "Surface roughness [m]"}, + /* 174 */ {"AL", "Albedo [(0 - 1)]"}, + /* 175 */ {"var175", "undefined"}, + /* 176 */ {"SSR", "Surface solar radiation [W m**-2]"}, + /* 177 */ {"STR", "Surface thermal radiation [W m**-2]"}, + /* 178 */ {"TSR", "Top solar radiation [W m**-2]"}, + /* 179 */ {"TTR", "Top thermal radiation [W m**-2]"}, + /* 180 */ {"EWSS", "East-West surface stress [N m**-2 s**-1]"}, + /* 181 */ {"NSSS", "North-South surface stress [N m**-2 s**-1]"}, + /* 182 */ {"E", "Evaporation [kg m**-2 s**-1]"}, + /* 183 */ {"STL3", "Soil temperature level 3 [K]"}, + /* 184 */ {"SWL3", "Soil wetness level 3 [m]"}, + /* 185 */ {"CCC", "Convective cloud cover [(0 - 1)]"}, + /* 186 */ {"LCC", "Low cloud cover [(0 - 1)]"}, + /* 187 */ {"MCC", "Medium cloud cover [(0 - 1)]"}, + /* 188 */ {"HCC", "High cloud cover [(0 - 1)]"}, + /* 189 */ {"var189", "undefined"}, + /* 190 */ {"EWOV", "East-West component of sub-gridscale orographic variance [m**2]"}, + /* 191 */ {"NSOV", "North-South component of sub-gridscale orographic variance [m**2]"}, + /* 192 */ {"NWOV", "North-West/South-East component of sub-gridscale orographic variance [m**2]"}, + /* 193 */ {"NEOV", "North-East/South-West component of sub-gridscale orographic variance [m**2]"}, + /* 194 */ {"var194", "undefined"}, + /* 195 */ {"LGWS", "Latitudinal component of gravity wave stress [N m**-2 s]"}, + /* 196 */ {"MGWS", "Meridional component of gravity wave stress [N m**-2 s]"}, + /* 197 */ {"GWD", "Gravity wave dissipation [W m**-2 s]"}, + /* 198 */ {"SRC", "Skin reservoir content [m of water]"}, + /* 199 */ {"VEG", "Percentage of vegetation [%]"}, + /* 200 */ {"VSO", "Variance of sub-gridscale orography [m**2]"}, + /* 201 */ {"MX2T", "Maximum temperature at 2 metres during averaging time [K]"}, + /* 202 */ {"MN2T", "Minimium temperature at 2 metres during averaging time [K]"}, + /* 203 */ {"var203", "undefined"}, + /* 204 */ {"PAW", "Precipitation analysis weights []"}, + /* 205 */ {"RO", "Runoff [kg m**-2 s**-1]"}, + /* 206 */ {"ZZ", "Standard deviation of geopotential [m**2 s**-2]"}, + /* 207 */ {"TZ", "Covariance of temperature and geopotential [K m**2 s**-2]"}, + /* 208 */ {"TT", "Standard deviation of temperature [K]"}, + /* 209 */ {"QZ", "Covariance of specific humidity and geopotential [m**2 s**-2]"}, + /* 210 */ {"QT", "Covariance of specific humidity and temperature [K]"}, + /* 211 */ {"QQ", "Standard deviation of specific humidity [(0 - 1)]"}, + /* 212 */ {"UZ", "Covariance of U component and geopotential [m**3 s**-3]"}, + /* 213 */ {"UT", "Covariance of U component and temperature [K m s**-1]"}, + /* 214 */ {"UQ", "Covariance of U component and specific humidity [m s**-1]"}, + /* 215 */ {"UU", "Standard deviation of U velocity [m s**-1]"}, + /* 216 */ {"VZ", "Covariance of V component and geopotential [m**3 s**-3]"}, + /* 217 */ {"VT", "Covariance of V component and temperature [K m s**-1]"}, + /* 218 */ {"VQ", "Covariance of V component and specific humidity [m s**-1]"}, + /* 219 */ {"VU", "Covariance of V component and U component [m**2 s**-2]"}, + /* 220 */ {"VV", "Standard deviation of V component [m s**-1]"}, + /* 221 */ {"WZ", "Covariance of W component and geopotential [Pa m**2 s**-3]"}, + /* 222 */ {"WT", "Covariance of W component and temperature [K Pa s**-1]"}, + /* 223 */ {"WQ", "Covariance of W component and specific humidity [Pa s**-1]"}, + /* 224 */ {"WU", "Covariance of W component and U component [Pa m s**-2]"}, + /* 225 */ {"WV", "Covariance of W component and V component [Pa m s**-2]"}, + /* 226 */ {"WW", "Standard deviation of vertical velocity [Pa s**-1]"}, + /* 227 */ {"var227", "undefined"}, + /* 228 */ {"TP", "Total precipitation [m]"}, + /* 229 */ {"IEWS", "Instantaneous X surface stress [N m**-2]"}, + /* 230 */ {"INSS", "Instantaneous Y surface stress [N m**-2]"}, + /* 231 */ {"ISHF", "Instantaneous surface heat flux [W m**-2]"}, + /* 232 */ {"IE", "Instantaneous moisture flux [kg m**-2 s**-1]"}, + /* 233 */ {"ASQ", "Apparent surface humidity [kg kg**-1]"}, + /* 234 */ {"LSRH", "Logarithm of surface roughness length for heat []"}, + /* 235 */ {"SKT", "Skin temperature [K]"}, + /* 236 */ {"STL4", "Soil temperature level 4 [K]"}, + /* 237 */ {"SWL4", "Soil wetness level 4 [m]"}, + /* 238 */ {"TSN", "Temperature of snow layer [K]"}, + /* 239 */ {"CSF", "Convective snowfall [kg m**-2 s**-1]"}, + /* 240 */ {"LSF", "Large-scale snowfall [kg m**-2 s**-1]"}, + /* 241 */ {"CLWCER", "Cloud liquid water content [kg kg**-1]"}, + /* 242 */ {"CC", "Cloud cover [(0 - 1)]"}, + /* 243 */ {"FAL", "Forecast albedo []"}, + /* 244 */ {"FSR", "Forecast surface roughness [m]"}, + /* 245 */ {"FLSR", "Forecast logarithm of surface roughness for heat []"}, + /* 246 */ {"10WS", "10 metre wind speed [m s**-1]"}, + /* 247 */ {"MOFL", "Momentum flux [N m**-2]"}, + /* 248 */ {"var248", "undefined"}, + /* 249 */ {"var249", "Gravity wave dissipation flux [W m**-2]"}, + /* 250 */ {"var250", "undefined"}, + /* 251 */ {"var251", "undefined"}, + /* 252 */ {"var252", "undefined"}, + /* 253 */ {"var253", "undefined"}, + /* 254 */ {"HSD", "Heaviside beta function [(0 - 1)]"}, + /* 255 */ {"var255", "Indicates a missing value []"}, +}; + +const struct ParmTable parm_table_ecmwf_162[256] = { + /* 0 */ {"var0", "undefined"}, + /* 1 */ {"var1", "undefined"}, + /* 2 */ {"var2", "undefined"}, + /* 3 */ {"var3", "undefined"}, + /* 4 */ {"var4", "undefined"}, + /* 5 */ {"var5", "undefined"}, + /* 6 */ {"var6", "undefined"}, + /* 7 */ {"var7", "undefined"}, + /* 8 */ {"var8", "undefined"}, + /* 9 */ {"var9", "undefined"}, + /* 10 */ {"var10", "undefined"}, + /* 11 */ {"var11", "undefined"}, + /* 12 */ {"var12", "undefined"}, + /* 13 */ {"var13", "undefined"}, + /* 14 */ {"var14", "undefined"}, + /* 15 */ {"var15", "undefined"}, + /* 16 */ {"var16", "undefined"}, + /* 17 */ {"var17", "undefined"}, + /* 18 */ {"var18", "undefined"}, + /* 19 */ {"var19", "undefined"}, + /* 20 */ {"var20", "undefined"}, + /* 21 */ {"var21", "undefined"}, + /* 22 */ {"var22", "undefined"}, + /* 23 */ {"var23", "undefined"}, + /* 24 */ {"var24", "undefined"}, + /* 25 */ {"var25", "undefined"}, + /* 26 */ {"var26", "undefined"}, + /* 27 */ {"var27", "undefined"}, + /* 28 */ {"var28", "undefined"}, + /* 29 */ {"var29", "undefined"}, + /* 30 */ {"var30", "undefined"}, + /* 31 */ {"var31", "undefined"}, + /* 32 */ {"var32", "undefined"}, + /* 33 */ {"var33", "undefined"}, + /* 34 */ {"var34", "undefined"}, + /* 35 */ {"var35", "undefined"}, + /* 36 */ {"var36", "undefined"}, + /* 37 */ {"var37", "undefined"}, + /* 38 */ {"var38", "undefined"}, + /* 39 */ {"var39", "undefined"}, + /* 40 */ {"var40", "undefined"}, + /* 41 */ {"var41", "undefined"}, + /* 42 */ {"var42", "undefined"}, + /* 43 */ {"var43", "undefined"}, + /* 44 */ {"var44", "undefined"}, + /* 45 */ {"var45", "undefined"}, + /* 46 */ {"var46", "undefined"}, + /* 47 */ {"var47", "undefined"}, + /* 48 */ {"var48", "undefined"}, + /* 49 */ {"var49", "undefined"}, + /* 50 */ {"var50", "undefined"}, + /* 51 */ {"var51", "Surface geopotential [m**2 s**-2]"}, + /* 52 */ {"var52", "Surface pressure [Pa]"}, + /* 53 */ {"var53", "Vertical integral of mass of atmosphere [kg m**-2]"}, + /* 54 */ {"var54", "Vertical integral of temperature [K kg m**-2]"}, + /* 55 */ {"var55", "Vertical integral of total column water vapour [kg m**-2]"}, + /* 56 */ {"var56", "Vertical integral of total column liquid cloud water [kg m**-2]"}, + /* 57 */ {"var57", "Vertical integral of total column frozen cloud water [kg m**-2]"}, + /* 58 */ {"var58", "Vertical integral of total column ozone [kg m**-2]"}, + /* 59 */ {"var59", "Vertical integral of kinetic energy [J m**-2]"}, + /* 60 */ {"var60", "Vertical integral of thermal energy [J m**-2]"}, + /* 61 */ {"var61", "Vertical integral of dry static energy [J m**-2]"}, + /* 62 */ {"var62", "Vertical integral of moist static energy [J m**-2]"}, + /* 63 */ {"var63", "Vertical integral of total energy [J m**-2]"}, + /* 64 */ {"var64", "Vertical integral of energy conversion [W m**-2]"}, + /* 65 */ {"var65", "Vertical integral of eastward mass flux [kg m**-1 s**-1]"}, + /* 66 */ {"var66", "Vertical integral of northward mass flux [kg m**-1 s**-1]"}, + /* 67 */ {"var67", "Vertical integral of eastward kinetic energy flux [W m**-2]"}, + /* 68 */ {"var68", "Vertical integral of northward kinetic energy flux [W m**-2]"}, + /* 69 */ {"var69", "Vertical integral of eastward heat flux [W m**-2]"}, + /* 70 */ {"var70", "Vertical integral of northward heat flux [W m**-2]"}, + /* 71 */ {"var71", "Vertical integral of eastward water vapour flux [kg m**-1 s**-1]"}, + /* 72 */ {"var72", "Vertical integral of northward water vapour flux [kg m**-1 s**-1]"}, + /* 73 */ {"var73", "Vertical integral of eastward geopotential flux [W m**-2]"}, + /* 74 */ {"var74", "Vertical integral of northward geopotential flux [W m**-2]"}, + /* 75 */ {"var75", "Vertical integral of eastward total energy flux [W m**-2]"}, + /* 76 */ {"var76", "Vertical integral of northward total energy flux [W m**-2]"}, + /* 77 */ {"var77", "Vertical integral of eastward ozone flux [kg m**-1 s**-1]"}, + /* 78 */ {"var78", "Vertical integral of northward ozone flux [kg m**-1 s**-1]"}, + /* 79 */ {"var79", "undefined"}, + /* 80 */ {"var80", "undefined"}, + /* 81 */ {"var81", "Vertical integral of divergence of mass flux [kg m**-2 s**-1]"}, + /* 82 */ {"var82", "Vertical integral of divergence of kinetic energy flux [W m**-2]"}, + /* 83 */ {"var83", "Vertical integral of divergence of thermal energy flux [W m**-2]"}, + /* 84 */ {"var84", "Vertical integral of divergence of moisture flux [kg m**-2 s**-1]"}, + /* 85 */ {"var85", "Vertical integral of divergence of geopotential flux [W m**-2]"}, + /* 86 */ {"var86", "Vertical integral of divergence of total energy flux [W m**-2]"}, + /* 87 */ {"var87", "Vertical integral of divergence of ozone flux [kg m**-2 s**-1]"}, + /* 88 */ {"var88", "undefined"}, + /* 89 */ {"var89", "undefined"}, + /* 90 */ {"var90", "undefined"}, + /* 91 */ {"var91", "undefined"}, + /* 92 */ {"var92", "undefined"}, + /* 93 */ {"var93", "undefined"}, + /* 94 */ {"var94", "undefined"}, + /* 95 */ {"var95", "undefined"}, + /* 96 */ {"var96", "undefined"}, + /* 97 */ {"var97", "undefined"}, + /* 98 */ {"var98", "undefined"}, + /* 99 */ {"var99", "undefined"}, + /* 100 */ {"var100", "Tendency of short wave radiation [K]"}, + /* 101 */ {"var101", "Tendency of long wave radiation [K]"}, + /* 102 */ {"var102", "Tendency of clear sky short wave radiation [K]"}, + /* 103 */ {"var103", "Tendency of clear sky long wave radiation [K]"}, + /* 104 */ {"var104", "Updraught mass flux [kg m**-2]"}, + /* 105 */ {"var105", "Downdraught mass flux [kg m**-2]"}, + /* 106 */ {"var106", "Updraught detrainment rate [kg m**-3]"}, + /* 107 */ {"var107", "Downdraught detrainment rate [kg m**-3]"}, + /* 108 */ {"var108", "Total precipitation flux [kg m**-2]"}, + /* 109 */ {"var109", "Turbulent diffusion coefficient for heat [m**2]"}, + /* 110 */ {"var110", "Tendency of temperature due to physics [K]"}, + /* 111 */ {"var111", "Tendency of specific humidity due to physics [kg kg**-1]"}, + /* 112 */ {"var112", "Tendency of u component due to physics [m s**-1]"}, + /* 113 */ {"var113", "Tendency of v component due to physics [m s**-1]"}, + /* 114 */ {"var114", "undefined"}, + /* 115 */ {"var115", "undefined"}, + /* 116 */ {"var116", "undefined"}, + /* 117 */ {"var117", "undefined"}, + /* 118 */ {"var118", "undefined"}, + /* 119 */ {"var119", "undefined"}, + /* 120 */ {"var120", "undefined"}, + /* 121 */ {"var121", "undefined"}, + /* 122 */ {"var122", "undefined"}, + /* 123 */ {"var123", "undefined"}, + /* 124 */ {"var124", "undefined"}, + /* 125 */ {"var125", "undefined"}, + /* 126 */ {"var126", "undefined"}, + /* 127 */ {"var127", "undefined"}, + /* 128 */ {"var128", "undefined"}, + /* 129 */ {"var129", "undefined"}, + /* 130 */ {"var130", "undefined"}, + /* 131 */ {"var131", "undefined"}, + /* 132 */ {"var132", "undefined"}, + /* 133 */ {"var133", "undefined"}, + /* 134 */ {"var134", "undefined"}, + /* 135 */ {"var135", "undefined"}, + /* 136 */ {"var136", "undefined"}, + /* 137 */ {"var137", "undefined"}, + /* 138 */ {"var138", "undefined"}, + /* 139 */ {"var139", "undefined"}, + /* 140 */ {"var140", "undefined"}, + /* 141 */ {"var141", "undefined"}, + /* 142 */ {"var142", "undefined"}, + /* 143 */ {"var143", "undefined"}, + /* 144 */ {"var144", "undefined"}, + /* 145 */ {"var145", "undefined"}, + /* 146 */ {"var146", "undefined"}, + /* 147 */ {"var147", "undefined"}, + /* 148 */ {"var148", "undefined"}, + /* 149 */ {"var149", "undefined"}, + /* 150 */ {"var150", "undefined"}, + /* 151 */ {"var151", "undefined"}, + /* 152 */ {"var152", "undefined"}, + /* 153 */ {"var153", "undefined"}, + /* 154 */ {"var154", "undefined"}, + /* 155 */ {"var155", "undefined"}, + /* 156 */ {"var156", "undefined"}, + /* 157 */ {"var157", "undefined"}, + /* 158 */ {"var158", "undefined"}, + /* 159 */ {"var159", "undefined"}, + /* 160 */ {"var160", "undefined"}, + /* 161 */ {"var161", "undefined"}, + /* 162 */ {"var162", "undefined"}, + /* 163 */ {"var163", "undefined"}, + /* 164 */ {"var164", "undefined"}, + /* 165 */ {"var165", "undefined"}, + /* 166 */ {"var166", "undefined"}, + /* 167 */ {"var167", "undefined"}, + /* 168 */ {"var168", "undefined"}, + /* 169 */ {"var169", "undefined"}, + /* 170 */ {"var170", "undefined"}, + /* 171 */ {"var171", "undefined"}, + /* 172 */ {"var172", "undefined"}, + /* 173 */ {"var173", "undefined"}, + /* 174 */ {"var174", "undefined"}, + /* 175 */ {"var175", "undefined"}, + /* 176 */ {"var176", "undefined"}, + /* 177 */ {"var177", "undefined"}, + /* 178 */ {"var178", "undefined"}, + /* 179 */ {"var179", "undefined"}, + /* 180 */ {"var180", "undefined"}, + /* 181 */ {"var181", "undefined"}, + /* 182 */ {"var182", "undefined"}, + /* 183 */ {"var183", "undefined"}, + /* 184 */ {"var184", "undefined"}, + /* 185 */ {"var185", "undefined"}, + /* 186 */ {"var186", "undefined"}, + /* 187 */ {"var187", "undefined"}, + /* 188 */ {"var188", "undefined"}, + /* 189 */ {"var189", "undefined"}, + /* 190 */ {"var190", "undefined"}, + /* 191 */ {"var191", "undefined"}, + /* 192 */ {"var192", "undefined"}, + /* 193 */ {"var193", "undefined"}, + /* 194 */ {"var194", "undefined"}, + /* 195 */ {"var195", "undefined"}, + /* 196 */ {"var196", "undefined"}, + /* 197 */ {"var197", "undefined"}, + /* 198 */ {"var198", "undefined"}, + /* 199 */ {"var199", "undefined"}, + /* 200 */ {"var200", "undefined"}, + /* 201 */ {"var201", "undefined"}, + /* 202 */ {"var202", "undefined"}, + /* 203 */ {"var203", "undefined"}, + /* 204 */ {"var204", "undefined"}, + /* 205 */ {"var205", "undefined"}, + /* 206 */ {"var206", "Variance of geopotential [m**4 s**-4]"}, + /* 207 */ {"var207", "Covariance of geopotential/temperature [m**2 K s**-2]"}, + /* 208 */ {"var208", "Variance of temperature [K**2]"}, + /* 209 */ {"var209", "Covariance of geopotential/specific humidity [m**2 s**-2]"}, + /* 210 */ {"var210", "Covariance of temperature/specific humidity [K]"}, + /* 211 */ {"var211", "Variance of specific humidity []"}, + /* 212 */ {"var212", "Covariance of u component/geopotential [M**3 s**-3]"}, + /* 213 */ {"var213", "Covariance of u component/temperature [m s**-1 K]"}, + /* 214 */ {"var214", "Covariance of u component/specific humidity [m s**-1]"}, + /* 215 */ {"var215", "Variance of u component [m**2 s**-2]"}, + /* 216 */ {"var216", "Covariance of v component/geopotential [M**3 s**-3]"}, + /* 217 */ {"var217", "Covariance of v component/temperaure [m s**-1 K]"}, + /* 218 */ {"var218", "Covariance of v component/specific humidity [m s**-1]"}, + /* 219 */ {"var219", "Covariance of v component/u component [m**2 s**-2]"}, + /* 220 */ {"var220", "Variance of v component [m**2 s**-2]"}, + /* 221 */ {"var221", "Covariance of omega/geopotential [m**2 Pa s**-3]"}, + /* 222 */ {"var222", "Covariance of omega/temperature [Pa s**-1 K]"}, + /* 223 */ {"var223", "Covariance of omega/specific humidity [Pa s**-1]"}, + /* 224 */ {"var224", "Covariance of omega/u component [m Pa s**-2]"}, + /* 225 */ {"var225", "Covariance of omega/v component [m Pa s**-2]"}, + /* 226 */ {"var226", "Variance of omega [Pa**2 s**-2]"}, + /* 227 */ {"var227", "Variance of surface pressure [Pa**2]"}, + /* 228 */ {"var228", "undefined"}, + /* 229 */ {"var229", "Variance of relative humidity [dimensionless]"}, + /* 230 */ {"var230", "Covariance of u component/ozone [m s**-1]"}, + /* 231 */ {"var231", "Covariance of v component/ozone [m s**-1]"}, + /* 232 */ {"var232", "Covariance of omega/ozone [Pa s**-1]"}, + /* 233 */ {"var233", "Variance of ozone [dimensionless]"}, + /* 234 */ {"var234", "undefined"}, + /* 235 */ {"var235", "undefined"}, + /* 236 */ {"var236", "undefined"}, + /* 237 */ {"var237", "undefined"}, + /* 238 */ {"var238", "undefined"}, + /* 239 */ {"var239", "undefined"}, + /* 240 */ {"var240", "undefined"}, + /* 241 */ {"var241", "undefined"}, + /* 242 */ {"var242", "undefined"}, + /* 243 */ {"var243", "undefined"}, + /* 244 */ {"var244", "undefined"}, + /* 245 */ {"var245", "undefined"}, + /* 246 */ {"var246", "undefined"}, + /* 247 */ {"var247", "undefined"}, + /* 248 */ {"var248", "undefined"}, + /* 249 */ {"var249", "undefined"}, + /* 250 */ {"var250", "undefined"}, + /* 251 */ {"var251", "undefined"}, + /* 252 */ {"var252", "undefined"}, + /* 253 */ {"var253", "undefined"}, + /* 254 */ {"var254", "undefined"}, + /* 255 */ {"var255", "Indicates a missing value []"}, +}; + +const struct ParmTable parm_table_ecmwf_170[256] = { + /* 0 */ {"var0", "undefined"}, + /* 1 */ {"var1", "undefined"}, + /* 2 */ {"var2", "undefined"}, + /* 3 */ {"var3", "undefined"}, + /* 4 */ {"var4", "undefined"}, + /* 5 */ {"var5", "undefined"}, + /* 6 */ {"var6", "undefined"}, + /* 7 */ {"var7", "undefined"}, + /* 8 */ {"var8", "undefined"}, + /* 9 */ {"var9", "undefined"}, + /* 10 */ {"var10", "undefined"}, + /* 11 */ {"var11", "undefined"}, + /* 12 */ {"var12", "undefined"}, + /* 13 */ {"var13", "undefined"}, + /* 14 */ {"var14", "undefined"}, + /* 15 */ {"var15", "undefined"}, + /* 16 */ {"var16", "undefined"}, + /* 17 */ {"var17", "undefined"}, + /* 18 */ {"var18", "undefined"}, + /* 19 */ {"var19", "undefined"}, + /* 20 */ {"var20", "undefined"}, + /* 21 */ {"var21", "undefined"}, + /* 22 */ {"var22", "undefined"}, + /* 23 */ {"var23", "undefined"}, + /* 24 */ {"var24", "undefined"}, + /* 25 */ {"var25", "undefined"}, + /* 26 */ {"var26", "undefined"}, + /* 27 */ {"var27", "undefined"}, + /* 28 */ {"var28", "undefined"}, + /* 29 */ {"var29", "undefined"}, + /* 30 */ {"var30", "undefined"}, + /* 31 */ {"var31", "undefined"}, + /* 32 */ {"var32", "undefined"}, + /* 33 */ {"var33", "undefined"}, + /* 34 */ {"var34", "undefined"}, + /* 35 */ {"var35", "undefined"}, + /* 36 */ {"var36", "undefined"}, + /* 37 */ {"var37", "undefined"}, + /* 38 */ {"var38", "undefined"}, + /* 39 */ {"var39", "undefined"}, + /* 40 */ {"var40", "undefined"}, + /* 41 */ {"var41", "undefined"}, + /* 42 */ {"var42", "undefined"}, + /* 43 */ {"var43", "undefined"}, + /* 44 */ {"var44", "undefined"}, + /* 45 */ {"var45", "undefined"}, + /* 46 */ {"var46", "undefined"}, + /* 47 */ {"var47", "undefined"}, + /* 48 */ {"var48", "undefined"}, + /* 49 */ {"var49", "undefined"}, + /* 50 */ {"var50", "undefined"}, + /* 51 */ {"var51", "undefined"}, + /* 52 */ {"var52", "undefined"}, + /* 53 */ {"var53", "undefined"}, + /* 54 */ {"var54", "undefined"}, + /* 55 */ {"var55", "undefined"}, + /* 56 */ {"var56", "undefined"}, + /* 57 */ {"var57", "undefined"}, + /* 58 */ {"var58", "undefined"}, + /* 59 */ {"var59", "undefined"}, + /* 60 */ {"var60", "undefined"}, + /* 61 */ {"var61", "undefined"}, + /* 62 */ {"var62", "undefined"}, + /* 63 */ {"var63", "undefined"}, + /* 64 */ {"var64", "undefined"}, + /* 65 */ {"var65", "undefined"}, + /* 66 */ {"var66", "undefined"}, + /* 67 */ {"var67", "undefined"}, + /* 68 */ {"var68", "undefined"}, + /* 69 */ {"var69", "undefined"}, + /* 70 */ {"var70", "undefined"}, + /* 71 */ {"var71", "undefined"}, + /* 72 */ {"var72", "undefined"}, + /* 73 */ {"var73", "undefined"}, + /* 74 */ {"var74", "undefined"}, + /* 75 */ {"var75", "undefined"}, + /* 76 */ {"var76", "undefined"}, + /* 77 */ {"var77", "undefined"}, + /* 78 */ {"var78", "undefined"}, + /* 79 */ {"var79", "undefined"}, + /* 80 */ {"var80", "undefined"}, + /* 81 */ {"var81", "undefined"}, + /* 82 */ {"var82", "undefined"}, + /* 83 */ {"var83", "undefined"}, + /* 84 */ {"var84", "undefined"}, + /* 85 */ {"var85", "undefined"}, + /* 86 */ {"var86", "undefined"}, + /* 87 */ {"var87", "undefined"}, + /* 88 */ {"var88", "undefined"}, + /* 89 */ {"var89", "undefined"}, + /* 90 */ {"var90", "undefined"}, + /* 91 */ {"var91", "undefined"}, + /* 92 */ {"var92", "undefined"}, + /* 93 */ {"var93", "undefined"}, + /* 94 */ {"var94", "undefined"}, + /* 95 */ {"var95", "undefined"}, + /* 96 */ {"var96", "undefined"}, + /* 97 */ {"var97", "undefined"}, + /* 98 */ {"var98", "undefined"}, + /* 99 */ {"var99", "undefined"}, + /* 100 */ {"var100", "undefined"}, + /* 101 */ {"var101", "undefined"}, + /* 102 */ {"var102", "undefined"}, + /* 103 */ {"var103", "undefined"}, + /* 104 */ {"var104", "undefined"}, + /* 105 */ {"var105", "undefined"}, + /* 106 */ {"var106", "undefined"}, + /* 107 */ {"var107", "undefined"}, + /* 108 */ {"var108", "undefined"}, + /* 109 */ {"var109", "undefined"}, + /* 110 */ {"var110", "undefined"}, + /* 111 */ {"var111", "undefined"}, + /* 112 */ {"var112", "undefined"}, + /* 113 */ {"var113", "undefined"}, + /* 114 */ {"var114", "undefined"}, + /* 115 */ {"var115", "undefined"}, + /* 116 */ {"var116", "undefined"}, + /* 117 */ {"var117", "undefined"}, + /* 118 */ {"var118", "undefined"}, + /* 119 */ {"var119", "undefined"}, + /* 120 */ {"var120", "undefined"}, + /* 121 */ {"var121", "undefined"}, + /* 122 */ {"var122", "undefined"}, + /* 123 */ {"var123", "undefined"}, + /* 124 */ {"var124", "undefined"}, + /* 125 */ {"var125", "undefined"}, + /* 126 */ {"var126", "undefined"}, + /* 127 */ {"var127", "undefined"}, + /* 128 */ {"var128", "undefined"}, + /* 129 */ {"Z", "Geopotential [m**2 s**-2]"}, + /* 130 */ {"T", "Temperature [K]"}, + /* 131 */ {"U", "U velocity [m s**-1]"}, + /* 132 */ {"V", "V velocity [m s**-1]"}, + /* 133 */ {"var133", "undefined"}, + /* 134 */ {"var134", "undefined"}, + /* 135 */ {"var135", "undefined"}, + /* 136 */ {"var136", "undefined"}, + /* 137 */ {"var137", "undefined"}, + /* 138 */ {"VO", "Vorticity (relative) [s**-1]"}, + /* 139 */ {"var139", "undefined"}, + /* 140 */ {"SWL1", "Soil wetness level 1 [m]"}, + /* 141 */ {"SD", "Snow depth [m of water equivalent]"}, + /* 142 */ {"var142", "undefined"}, + /* 143 */ {"var143", "undefined"}, + /* 144 */ {"var144", "undefined"}, + /* 145 */ {"var145", "undefined"}, + /* 146 */ {"var146", "undefined"}, + /* 147 */ {"var147", "undefined"}, + /* 148 */ {"var148", "undefined"}, + /* 149 */ {"TSW", "Total soil moisture [m]"}, + /* 150 */ {"var150", "undefined"}, + /* 151 */ {"MSL", "Mean sea level pressure [Pa]"}, + /* 152 */ {"var152", "undefined"}, + /* 153 */ {"var153", "undefined"}, + /* 154 */ {"var154", "undefined"}, + /* 155 */ {"D", "Divergence [s**-1]"}, + /* 156 */ {"var156", "undefined"}, + /* 157 */ {"var157", "undefined"}, + /* 158 */ {"var158", "undefined"}, + /* 159 */ {"var159", "undefined"}, + /* 160 */ {"var160", "undefined"}, + /* 161 */ {"var161", "undefined"}, + /* 162 */ {"var162", "undefined"}, + /* 163 */ {"var163", "undefined"}, + /* 164 */ {"var164", "undefined"}, + /* 165 */ {"var165", "undefined"}, + /* 166 */ {"var166", "undefined"}, + /* 167 */ {"var167", "undefined"}, + /* 168 */ {"var168", "undefined"}, + /* 169 */ {"var169", "undefined"}, + /* 170 */ {"var170", "undefined"}, + /* 171 */ {"SWL2", "Soil wetness level 2 [m]"}, + /* 172 */ {"var172", "undefined"}, + /* 173 */ {"var173", "undefined"}, + /* 174 */ {"var174", "undefined"}, + /* 175 */ {"var175", "undefined"}, + /* 176 */ {"var176", "undefined"}, + /* 177 */ {"var177", "undefined"}, + /* 178 */ {"var178", "undefined"}, + /* 179 */ {"TTR", "Top thermal radiation [W m-2]"}, + /* 180 */ {"var180", "undefined"}, + /* 181 */ {"var181", "undefined"}, + /* 182 */ {"var182", "undefined"}, + /* 183 */ {"var183", "undefined"}, + /* 184 */ {"SWL3", "Soil wetness level 3 [m]"}, + /* 185 */ {"var185", "undefined"}, + /* 186 */ {"var186", "undefined"}, + /* 187 */ {"var187", "undefined"}, + /* 188 */ {"var188", "undefined"}, + /* 189 */ {"var189", "undefined"}, + /* 190 */ {"var190", "undefined"}, + /* 191 */ {"var191", "undefined"}, + /* 192 */ {"var192", "undefined"}, + /* 193 */ {"var193", "undefined"}, + /* 194 */ {"var194", "undefined"}, + /* 195 */ {"var195", "undefined"}, + /* 196 */ {"var196", "undefined"}, + /* 197 */ {"var197", "undefined"}, + /* 198 */ {"var198", "undefined"}, + /* 199 */ {"var199", "undefined"}, + /* 200 */ {"var200", "undefined"}, + /* 201 */ {"MX2T", "Maximum temperature at 2 metres [K]"}, + /* 202 */ {"MN2T", "Minimum temperature at 2 metres [K]"}, + /* 203 */ {"var203", "undefined"}, + /* 204 */ {"var204", "undefined"}, + /* 205 */ {"var205", "undefined"}, + /* 206 */ {"var206", "undefined"}, + /* 207 */ {"var207", "undefined"}, + /* 208 */ {"var208", "undefined"}, + /* 209 */ {"var209", "undefined"}, + /* 210 */ {"var210", "undefined"}, + /* 211 */ {"var211", "undefined"}, + /* 212 */ {"var212", "undefined"}, + /* 213 */ {"var213", "undefined"}, + /* 214 */ {"var214", "undefined"}, + /* 215 */ {"var215", "undefined"}, + /* 216 */ {"var216", "undefined"}, + /* 217 */ {"var217", "undefined"}, + /* 218 */ {"var218", "undefined"}, + /* 219 */ {"var219", "undefined"}, + /* 220 */ {"var220", "undefined"}, + /* 221 */ {"var221", "undefined"}, + /* 222 */ {"var222", "undefined"}, + /* 223 */ {"var223", "undefined"}, + /* 224 */ {"var224", "undefined"}, + /* 225 */ {"var225", "undefined"}, + /* 226 */ {"var226", "undefined"}, + /* 227 */ {"var227", "undefined"}, + /* 228 */ {"TP", "Total precipitation [m]"}, + /* 229 */ {"var229", "undefined"}, + /* 230 */ {"var230", "undefined"}, + /* 231 */ {"var231", "undefined"}, + /* 232 */ {"var232", "undefined"}, + /* 233 */ {"var233", "undefined"}, + /* 234 */ {"var234", "undefined"}, + /* 235 */ {"var235", "undefined"}, + /* 236 */ {"var236", "undefined"}, + /* 237 */ {"var237", "undefined"}, + /* 238 */ {"var238", "undefined"}, + /* 239 */ {"var239", "undefined"}, + /* 240 */ {"var240", "undefined"}, + /* 241 */ {"var241", "undefined"}, + /* 242 */ {"var242", "undefined"}, + /* 243 */ {"var243", "undefined"}, + /* 244 */ {"var244", "undefined"}, + /* 245 */ {"var245", "undefined"}, + /* 246 */ {"var246", "undefined"}, + /* 247 */ {"var247", "undefined"}, + /* 248 */ {"var248", "undefined"}, + /* 249 */ {"var249", "undefined"}, + /* 250 */ {"var250", "undefined"}, + /* 251 */ {"var251", "undefined"}, + /* 252 */ {"var252", "undefined"}, + /* 253 */ {"var253", "undefined"}, + /* 254 */ {"var254", "undefined"}, + /* 255 */ {"var255", "Indicates a missing value []"}, +}; + +const struct ParmTable parm_table_ecmwf_171[256] = { + /* 0 */ {"var0", "undefined"}, + /* 1 */ {"STRFA", "Stream function anomaly [m**2 s**-1]"}, + /* 2 */ {"VPOTA", "Velocity potential anomaly [m**2 s**-1]"}, + /* 3 */ {"var3", "Potential temperature [K]"}, + /* 4 */ {"var4", "Equivalent potential temperature [K]"}, + /* 5 */ {"var5", "Saturated equivalent potential temperature [K]"}, + /* 6 */ {"var6", "undefined"}, + /* 7 */ {"var7", "undefined"}, + /* 8 */ {"var8", "undefined"}, + /* 9 */ {"var9", "undefined"}, + /* 10 */ {"var10", "undefined"}, + /* 11 */ {"var11", "U component of divergent wind [m s**-1]"}, + /* 12 */ {"var12", "V component of divergent wind [m s**-1]"}, + /* 13 */ {"var13", "U component of rotational wind [m s**-1]"}, + /* 14 */ {"var14", "V component of rotational wind [m s**-1]"}, + /* 15 */ {"var15", "undefined"}, + /* 16 */ {"var16", "undefined"}, + /* 17 */ {"var17", "undefined"}, + /* 18 */ {"var18", "undefined"}, + /* 19 */ {"var19", "undefined"}, + /* 20 */ {"var20", "undefined"}, + /* 21 */ {"var21", "Unbalanced component of temperature [K]"}, + /* 22 */ {"var22", "Unbalanced component of logarithm of surface pressure []"}, + /* 23 */ {"var23", "Unbalanced component of divergence [s**-1]"}, + /* 24 */ {"var24", "undefined"}, + /* 25 */ {"var25", "undefined"}, + /* 26 */ {"var26", "Lake cover [(0 - 1)]"}, + /* 27 */ {"var27", "Low vegetation cover [(0 - 1)]"}, + /* 28 */ {"var28", "High vegetation cover [(0 - 1)]"}, + /* 29 */ {"var29", "Type of low vegetation []"}, + /* 30 */ {"var30", "Type of high vegetation []"}, + /* 31 */ {"var31", "Sea-ice cover [(0 - 1)]"}, + /* 32 */ {"var32", "Snow albedo [(0 - 1)]"}, + /* 33 */ {"var33", "Snow density [kg m**-3]"}, + /* 34 */ {"var34", "Sea surface temperature [K]"}, + /* 35 */ {"var35", "Ice surface temperature layer 1 [K]"}, + /* 36 */ {"var36", "Ice surface temperature layer 2 [K]"}, + /* 37 */ {"var37", "Ice surface temperature layer 3 [K]"}, + /* 38 */ {"var38", "Ice surface temperature layer 4 [K]"}, + /* 39 */ {"var39", "Volumetric soil water layer 1 [m**3 m**-3]"}, + /* 40 */ {"var40", "Volumetric soil water layer 2 [m**3 m**-3]"}, + /* 41 */ {"var41", "Volumetric soil water layer 3 [m**3 m**-3]"}, + /* 42 */ {"var42", "Volumetric soil water layer 4 [m**3 m**-3]"}, + /* 43 */ {"var43", "Soil type []"}, + /* 44 */ {"var44", "Snow evaporation [m of water]"}, + /* 45 */ {"var45", "Snowmelt [m of water]"}, + /* 46 */ {"var46", "Solar duration [s]"}, + /* 47 */ {"var47", "Direct solar radiation [w m**-2]"}, + /* 48 */ {"var48", "Magnitude of surface stress [N m**-2 s]"}, + /* 49 */ {"var49", "10 metre wind gust [m s**-1]"}, + /* 50 */ {"var50", "Large-scale precipitation fraction [s]"}, + /* 51 */ {"var51", "Maximum 2 metre temperature [K]"}, + /* 52 */ {"var52", "Minimum 2 metre temperature [K]"}, + /* 53 */ {"var53", "Montgomery potential [m**2 s**-2]"}, + /* 54 */ {"var54", "Pressure [Pa]"}, + /* 55 */ {"var55", "Mean 2 metre temperature in past 24 hours [K]"}, + /* 56 */ {"var56", "Mean 2 metre dewpoint temperature in past 24 hours [K]"}, + /* 57 */ {"var57", "Downward UV radiation at the surface [w m**-2]"}, + /* 58 */ {"var58", "Photosynthetically active radiation at the surface [w m**-2]"}, + /* 59 */ {"var59", "Convective available potential energy [J kg**-1]"}, + /* 60 */ {"var60", "Potential vorticity [K m**2 kg**-1 s**-1]"}, + /* 61 */ {"var61", "Total precipitation from observations [Millimetres*100 + number of stations]"}, + /* 62 */ {"var62", "Observation count []"}, + /* 63 */ {"var63", "Start time for skin temperature difference [s]"}, + /* 64 */ {"var64", "Finish time for skin temperature difference [s]"}, + /* 65 */ {"var65", "Skin temperature difference [K]"}, + /* 66 */ {"var66", "undefined"}, + /* 67 */ {"var67", "undefined"}, + /* 68 */ {"var68", "undefined"}, + /* 69 */ {"var69", "undefined"}, + /* 70 */ {"var70", "undefined"}, + /* 71 */ {"var71", "undefined"}, + /* 72 */ {"var72", "undefined"}, + /* 73 */ {"var73", "undefined"}, + /* 74 */ {"var74", "undefined"}, + /* 75 */ {"var75", "undefined"}, + /* 76 */ {"var76", "undefined"}, + /* 77 */ {"var77", "undefined"}, + /* 78 */ {"TCLWA", "Total column liquid water anomaly [kg m**-2]"}, + /* 79 */ {"TCIWA", "Total column ice water anomaly [kg m**-2]"}, + /* 80 */ {"var80", "undefined"}, + /* 81 */ {"var81", "undefined"}, + /* 82 */ {"var82", "undefined"}, + /* 83 */ {"var83", "undefined"}, + /* 84 */ {"var84", "undefined"}, + /* 85 */ {"var85", "undefined"}, + /* 86 */ {"var86", "undefined"}, + /* 87 */ {"var87", "undefined"}, + /* 88 */ {"var88", "undefined"}, + /* 89 */ {"var89", "undefined"}, + /* 90 */ {"var90", "undefined"}, + /* 91 */ {"var91", "undefined"}, + /* 92 */ {"var92", "undefined"}, + /* 93 */ {"var93", "undefined"}, + /* 94 */ {"var94", "undefined"}, + /* 95 */ {"var95", "undefined"}, + /* 96 */ {"var96", "undefined"}, + /* 97 */ {"var97", "undefined"}, + /* 98 */ {"var98", "undefined"}, + /* 99 */ {"var99", "undefined"}, + /* 100 */ {"var100", "undefined"}, + /* 101 */ {"var101", "undefined"}, + /* 102 */ {"var102", "undefined"}, + /* 103 */ {"var103", "undefined"}, + /* 104 */ {"var104", "undefined"}, + /* 105 */ {"var105", "undefined"}, + /* 106 */ {"var106", "undefined"}, + /* 107 */ {"var107", "undefined"}, + /* 108 */ {"var108", "undefined"}, + /* 109 */ {"var109", "undefined"}, + /* 110 */ {"var110", "undefined"}, + /* 111 */ {"var111", "undefined"}, + /* 112 */ {"var112", "undefined"}, + /* 113 */ {"var113", "undefined"}, + /* 114 */ {"var114", "undefined"}, + /* 115 */ {"var115", "undefined"}, + /* 116 */ {"var116", "undefined"}, + /* 117 */ {"var117", "undefined"}, + /* 118 */ {"var118", "undefined"}, + /* 119 */ {"var119", "undefined"}, + /* 120 */ {"var120", "undefined"}, + /* 121 */ {"var121", "undefined"}, + /* 122 */ {"var122", "undefined"}, + /* 123 */ {"var123", "undefined"}, + /* 124 */ {"var124", "undefined"}, + /* 125 */ {"var125", "Vertically integrated total energy [J m**-2]"}, + /* 126 */ {"var126", "Generic parameter for sensitive area prediction [Various]"}, + /* 127 */ {"var127", "Atmospheric tide []"}, + /* 128 */ {"var128", "Budget values []"}, + /* 129 */ {"ZA", "Geopotential anomaly [m**2 s**-2]"}, + /* 130 */ {"TA", "Temperature anomaly [K]"}, + /* 131 */ {"UA", "U velocity anomaly [m s**-1]"}, + /* 132 */ {"VA", "V velocity anomaly [m s**-1]"}, + /* 133 */ {"var133", "Specific humidity [kg kg**-1]"}, + /* 134 */ {"var134", "Surface pressure [Pa]"}, + /* 135 */ {"var135", "Vertical velocity [Pa s**-1]"}, + /* 136 */ {"TCWA", "Total column water [kg m**-2]"}, + /* 137 */ {"TCWVA", "Total column water vapour [kg m**-2]"}, + /* 138 */ {"var138", "Vorticity (relative) [s**-1]"}, + /* 139 */ {"STAL1", "Soil temperature level 1 [K]"}, + /* 140 */ {"var140", "Soil wetness level 1 [m of water]"}, + /* 141 */ {"var141", "Snow depth [m of water equivalent]"}, + /* 142 */ {"var142", "Stratiform precipitation (Large-scale precipitation) [m]"}, + /* 143 */ {"var143", "Convective precipitation [m]"}, + /* 144 */ {"var144", "Snowfall (convective + stratiform) [m of water equivalent]"}, + /* 145 */ {"var145", "Boundary layer dissipation [W m**-2 s]"}, + /* 146 */ {"var146", "Surface sensible heat flux [W m**-2 s]"}, + /* 147 */ {"var147", "Surface latent heat flux [W m**-2 s]"}, + /* 148 */ {"var148", "Charnock []"}, + /* 149 */ {"var149", "Surface net radiation [W m**-2 s]"}, + /* 150 */ {"var150", "Top net radiation []"}, + /* 151 */ {"MSLA", "Mean sea level pressure anomaly [Pa]"}, + /* 152 */ {"var152", "Logarithm of surface pressure []"}, + /* 153 */ {"var153", "Short-wave heating rate [K]"}, + /* 154 */ {"var154", "Long-wave heating rate [K]"}, + /* 155 */ {"var155", "Divergence [s**-1]"}, + /* 156 */ {"var156", "Height [m]"}, + /* 157 */ {"var157", "Relative humidity [%]"}, + /* 158 */ {"var158", "Tendency of surface pressure [Pa s**-1]"}, + /* 159 */ {"var159", "Boundary layer height [m]"}, + /* 160 */ {"var160", "Standard deviation of orography []"}, + /* 161 */ {"var161", "Anisotropy of sub-gridscale orography []"}, + /* 162 */ {"var162", "Angle of sub-gridscale orography [rad]"}, + /* 163 */ {"var163", "Slope of sub-gridscale orography []"}, + /* 164 */ {"TCCA", "Total cloud cover anomaly [(0 - 1)]"}, + /* 165 */ {"10UA", "10 metre U wind component anomaly [m s**-1]"}, + /* 166 */ {"10VA", "10 metre V wind component anomaly [m s**-1]"}, + /* 167 */ {"2TA", "2 metre temperature anomaly [K]"}, + /* 168 */ {"var168", "2 metre dewpoint temperature [K]"}, + /* 169 */ {"var169", "Surface solar radiation downwards [W m**-2 s]"}, + /* 170 */ {"var170", "Soil temperature level 2 [K]"}, + /* 171 */ {"var171", "Soil wetness level 2 [m of water]"}, + /* 172 */ {"var172", "Land-sea mask [(0 - 1)]"}, + /* 173 */ {"var173", "Surface roughness [m]"}, + /* 174 */ {"var174", "Albedo [(0 - 1)]"}, + /* 175 */ {"var175", "Surface thermal radiation downwards [W m**-2 s]"}, + /* 176 */ {"var176", "Surface solar radiation [W m**-2 s]"}, + /* 177 */ {"var177", "Surface thermal radiation [W m**-2 s]"}, + /* 178 */ {"var178", "Top solar radiation [W m**-2 s]"}, + /* 179 */ {"var179", "Top thermal radiation [W m**-2 s]"}, + /* 180 */ {"var180", "East-West surface stress [N m**-2 s]"}, + /* 181 */ {"var181", "North-South surface stress [N m**-2 s]"}, + /* 182 */ {"var182", "Evaporation [m of water]"}, + /* 183 */ {"var183", "Soil temperature level 3 [K]"}, + /* 184 */ {"var184", "Soil wetness level 3 [m of water]"}, + /* 185 */ {"var185", "Convective cloud cover [(0 - 1)]"}, + /* 186 */ {"var186", "Low cloud cover [(0 - 1)]"}, + /* 187 */ {"var187", "Medium cloud cover [(0 - 1)]"}, + /* 188 */ {"var188", "High cloud cover [(0 - 1)]"}, + /* 189 */ {"SUNDA", "Sunshine duration anomaly [s]"}, + /* 190 */ {"var190", "East-West component of sub-gridscale orographic variance [m**2]"}, + /* 191 */ {"var191", "North-South component of sub-gridscale orographic variance [m**2]"}, + /* 192 */ {"var192", "North-West/South-East component of sub-gridscale orographic variance [m**2]"}, + /* 193 */ {"var193", "North-East/South-West component of sub-gridscale orographic variance [m**2]"}, + /* 194 */ {"var194", "Brightness temperature [K]"}, + /* 195 */ {"var195", "Latitudinal component of gravity wave stress [N m**-2 s]"}, + /* 196 */ {"var196", "Meridional component of gravity wave stress [N m**-2 s]"}, + /* 197 */ {"var197", "Gravity wave dissipation [W m**-2 s]"}, + /* 198 */ {"var198", "Skin reservoir content [m of water]"}, + /* 199 */ {"var199", "Vegetation fraction [(0 - 1)]"}, + /* 200 */ {"var200", "Variance of sub-gridscale orography [m**2]"}, + /* 201 */ {"MX2TA", "Maximum temperature at 2 metres anomaly [K]"}, + /* 202 */ {"MN2TA", "Minimum temperature at 2 metres anomaly [K]"}, + /* 203 */ {"var203", "Ozone mass mixing ratio [kg kg**-1]"}, + /* 204 */ {"var204", "Precipitation analysis weights []"}, + /* 205 */ {"var205", "Runoff [m]"}, + /* 206 */ {"var206", "Total column ozone [kg m**-2]"}, + /* 207 */ {"var207", "10 metre wind speed [m s**-1]"}, + /* 208 */ {"var208", "Top net solar radiation, clear sky [W m**-2 s]"}, + /* 209 */ {"var209", "Top net thermal radiation, clear sky [W m**-2 s]"}, + /* 210 */ {"var210", "Surface net solar radiation, clear sky [W m**-2 s]"}, + /* 211 */ {"var211", "Surface net thermal radiation, clear sky [W m**-2 s]"}, + /* 212 */ {"var212", "Solar insolation [W m**-2]"}, + /* 213 */ {"var213", "undefined"}, + /* 214 */ {"var214", "Diabatic heating by radiation [K]"}, + /* 215 */ {"var215", "Diabatic heating by vertical diffusion [K]"}, + /* 216 */ {"var216", "Diabatic heating by cumulus convection [K]"}, + /* 217 */ {"var217", "Diabatic heating by large-scale condensation [K]"}, + /* 218 */ {"var218", "Vertical diffusion of zonal wind [m s**-1]"}, + /* 219 */ {"var219", "Vertical diffusion of meridional wind [m s**-1]"}, + /* 220 */ {"var220", "East-West gravity wave drag tendency [m s**-1]"}, + /* 221 */ {"var221", "North-South gravity wave drag tendency [m s**-1]"}, + /* 222 */ {"var222", "Convective tendency of zonal wind [m s**-1]"}, + /* 223 */ {"var223", "Convective tendency of meridional wind [m s**-1]"}, + /* 224 */ {"var224", "Vertical diffusion of humidity [kg kg**-1]"}, + /* 225 */ {"var225", "Humidity tendency by cumulus convection [kg kg**-1]"}, + /* 226 */ {"var226", "Humidity tendency by large-scale condensation [kg kg**-1]"}, + /* 227 */ {"var227", "Change from removal of negative humidity [kg kg**-1]"}, + /* 228 */ {"TPA", "Total precipitation anomaly [m]"}, + /* 229 */ {"var229", "Instantaneous X surface stress [N m**-2]"}, + /* 230 */ {"var230", "Instantaneous Y surface stress [N m**-2]"}, + /* 231 */ {"var231", "Instantaneous surface heat flux [W m**-2]"}, + /* 232 */ {"var232", "Instantaneous moisture flux [kg m**-2 s]"}, + /* 233 */ {"var233", "Apparent surface humidity [kg kg**-1]"}, + /* 234 */ {"var234", "Logarithm of surface roughness length for heat []"}, + /* 235 */ {"var235", "Skin temperature [K]"}, + /* 236 */ {"var236", "Soil temperature level 4 [K]"}, + /* 237 */ {"var237", "Soil wetness level 4 [m]"}, + /* 238 */ {"var238", "Temperature of snow layer [K]"}, + /* 239 */ {"var239", "Convective snowfall [m of water equivalent]"}, + /* 240 */ {"var240", "Large-scale snowfall [m of water equivalent]"}, + /* 241 */ {"var241", "Accumulated cloud fraction tendency [(-1 to 1)]"}, + /* 242 */ {"var242", "Accumulated liquid water tendency [(-1 to 1)]"}, + /* 243 */ {"var243", "Forecast albedo [(0 - 1)]"}, + /* 244 */ {"var244", "Forecast surface roughness [m]"}, + /* 245 */ {"var245", "Forecast logarithm of surface roughness for heat []"}, + /* 246 */ {"var246", "Cloud liquid water content [kg kg**-1]"}, + /* 247 */ {"var247", "Cloud ice water content [kg kg**-1]"}, + /* 248 */ {"var248", "Cloud cover [(0 - 1)]"}, + /* 249 */ {"var249", "Accumulated ice water tendency [(-1 to 1)]"}, + /* 250 */ {"var250", "Ice age [(0 - 1)]"}, + /* 251 */ {"var251", "Adiabatic tendency of temperature [K]"}, + /* 252 */ {"var252", "Adiabatic tendency of humidity [kg kg**-1]"}, + /* 253 */ {"var253", "Adiabatic tendency of zonal wind [m s**-1]"}, + /* 254 */ {"var254", "Adiabatic tendency of meridional wind [m s**-1]"}, + /* 255 */ {"var255", "Indicates a missing value []"}, +}; + +/* ectable 172 from Geert Jan van Oldenborgh */ + +const struct ParmTable parm_table_ecmwf_172[256] = { /* 0 */ {"var0", "undefined"}, /* 1 */ {"var1", "undefined"}, /* 2 */ {"var2", "undefined"}, @@ -4629,13 +7479,13 @@ const struct ParmTable parm_table_ecmwf_130[256] = { /* 41 */ {"var41", "undefined"}, /* 42 */ {"var42", "undefined"}, /* 43 */ {"var43", "undefined"}, - /* 44 */ {"var44", "undefined"}, - /* 45 */ {"var45", "undefined"}, + /* 44 */ {"SNOE", "Snow evaporation m of water s**-1"}, + /* 45 */ {"SNOM", "Snow melt m of water s**-1"}, /* 46 */ {"var46", "undefined"}, /* 47 */ {"var47", "undefined"}, - /* 48 */ {"var48", "undefined"}, + /* 48 */ {"MSS", "magnitude of surface stress N m**-2"}, /* 49 */ {"var49", "undefined"}, - /* 50 */ {"var50", "undefined"}, + /* 50 */ {"", "Large-scale precipitation fraction -"}, /* 51 */ {"var51", "undefined"}, /* 52 */ {"var52", "undefined"}, /* 53 */ {"var53", "undefined"}, @@ -4727,4943 +7577,19 @@ const struct ParmTable parm_table_ecmwf_130[256] = { /* 139 */ {"var139", "undefined"}, /* 140 */ {"var140", "undefined"}, /* 141 */ {"var141", "undefined"}, - /* 142 */ {"var142", "undefined"}, - /* 143 */ {"var143", "undefined"}, - /* 144 */ {"var144", "undefined"}, - /* 145 */ {"var145", "undefined"}, - /* 146 */ {"var146", "undefined"}, - /* 147 */ {"var147", "undefined"}, - /* 148 */ {"var148", "undefined"}, - /* 149 */ {"var149", "undefined"}, - /* 150 */ {"var150", "undefined"}, - /* 151 */ {"var151", "undefined"}, - /* 152 */ {"var152", "undefined"}, - /* 153 */ {"var153", "undefined"}, - /* 154 */ {"var154", "undefined"}, - /* 155 */ {"var155", "undefined"}, - /* 156 */ {"var156", "undefined"}, - /* 157 */ {"var157", "undefined"}, - /* 158 */ {"var158", "undefined"}, - /* 159 */ {"var159", "undefined"}, - /* 160 */ {"var160", "undefined"}, - /* 161 */ {"var161", "undefined"}, - /* 162 */ {"var162", "undefined"}, - /* 163 */ {"var163", "undefined"}, - /* 164 */ {"var164", "undefined"}, - /* 165 */ {"var165", "undefined"}, - /* 166 */ {"var166", "undefined"}, - /* 167 */ {"var167", "undefined"}, - /* 168 */ {"var168", "undefined"}, - /* 169 */ {"var169", "undefined"}, - /* 170 */ {"var170", "undefined"}, - /* 171 */ {"var171", "undefined"}, - /* 172 */ {"var172", "undefined"}, - /* 173 */ {"var173", "undefined"}, - /* 174 */ {"var174", "undefined"}, - /* 175 */ {"var175", "undefined"}, - /* 176 */ {"var176", "undefined"}, - /* 177 */ {"var177", "undefined"}, - /* 178 */ {"var178", "undefined"}, - /* 179 */ {"var179", "undefined"}, - /* 180 */ {"var180", "undefined"}, - /* 181 */ {"var181", "undefined"}, - /* 182 */ {"var182", "undefined"}, - /* 183 */ {"var183", "undefined"}, - /* 184 */ {"var184", "undefined"}, - /* 185 */ {"var185", "undefined"}, - /* 186 */ {"var186", "undefined"}, - /* 187 */ {"var187", "undefined"}, - /* 188 */ {"var188", "undefined"}, - /* 189 */ {"var189", "undefined"}, - /* 190 */ {"var190", "undefined"}, - /* 191 */ {"var191", "undefined"}, - /* 192 */ {"var192", "undefined"}, - /* 193 */ {"var193", "undefined"}, - /* 194 */ {"var194", "undefined"}, - /* 195 */ {"var195", "undefined"}, - /* 196 */ {"var196", "undefined"}, - /* 197 */ {"var197", "undefined"}, - /* 198 */ {"var198", "undefined"}, - /* 199 */ {"var199", "undefined"}, - /* 200 */ {"var200", "undefined"}, - /* 201 */ {"var201", "undefined"}, - /* 202 */ {"var202", "undefined"}, - /* 203 */ {"var203", "undefined"}, - /* 204 */ {"var204", "undefined"}, - /* 205 */ {"var205", "undefined"}, - /* 206 */ {"var206", "undefined"}, - /* 207 */ {"var207", "undefined"}, - /* 208 */ {"TSRU", "Top solar radiation upward [W m**-2]"}, - /* 209 */ {"TTRU", "Top thermal radiation upward [W m**-2]"}, - /* 210 */ {"TSUC", "Top solar radiation upward, clear sky [W m**-2]"}, - /* 211 */ {"TTUC", "Top thermal radiation upward, clear sky [W m**-2]"}, - /* 212 */ {"CLW", "Cloud liquid water [kg kg**-1]"}, - /* 213 */ {"CF", "Cloud fraction [(0 - 1)]"}, - /* 214 */ {"DHR", "Diabatic heating by radiation [K s**-1]"}, - /* 215 */ {"DHVD", "Diabatic heating by vertical diffusion [K s**-1]"}, - /* 216 */ {"DHCC", "Diabatic heating by cumulus convection [K s**-1]"}, - /* 217 */ {"DHLC", "Diabatic heating by large-scale condensation [K s**-1]"}, - /* 218 */ {"VDZW", "Vertical diffusion of zonal wind [m**2 s**-3]"}, - /* 219 */ {"VDMW", "Vertical diffusion of meridional wind [m**2 s**-3]"}, - /* 220 */ {"EWGD", "East-West gravity wave drag [m**2 s**-3]"}, - /* 221 */ {"NSGD", "North-South gravity wave drag [m**2 s**-3]"}, - /* 222 */ {"CTZW", "Convective tendency of zonal wind [m**2 s**-3]"}, - /* 223 */ {"CTMW", "Convective tendency of meridional wind [m**2 s**-3]"}, - /* 224 */ {"VDH", "Vertical diffusion of humidity [kg kg**-1 s**-1]"}, - /* 225 */ {"HTCC", "Humidity tendency by cumulus convection [kg kg**-1 s**-1]"}, - /* 226 */ {"HTLC", "Humidity tendency by large-scale condensation [kg kg**-1 s**-1]"}, - /* 227 */ {"CRNH", "Change from removal of negative humidity [kg kg**-1 s**-1]"}, - /* 228 */ {"ATT", "Adiabatic tendency of temperature [K s**-1]"}, - /* 229 */ {"ATH", "Adiabatic tendency of humidity [kg kg**-1 s**-1]"}, - /* 230 */ {"ATZW", "Adiabatic tendency of zonal wind [m**2 s**-3]"}, - /* 231 */ {"ATMWAX", "Adiabatic tendency of meridional wind [m**2 s**-3]"}, - /* 232 */ {"MVV", "Mean vertical velocity [Pa s**-1]"}, - /* 233 */ {"var233", "undefined"}, - /* 234 */ {"var234", "undefined"}, - /* 235 */ {"var235", "undefined"}, - /* 236 */ {"var236", "undefined"}, - /* 237 */ {"var237", "undefined"}, - /* 238 */ {"var238", "undefined"}, - /* 239 */ {"var239", "undefined"}, - /* 240 */ {"var240", "undefined"}, - /* 241 */ {"var241", "undefined"}, - /* 242 */ {"var242", "undefined"}, - /* 243 */ {"var243", "undefined"}, - /* 244 */ {"var244", "undefined"}, - /* 245 */ {"var245", "undefined"}, - /* 246 */ {"var246", "undefined"}, - /* 247 */ {"var247", "undefined"}, - /* 248 */ {"var248", "undefined"}, - /* 249 */ {"var249", "undefined"}, - /* 250 */ {"var250", "undefined"}, - /* 251 */ {"var251", "undefined"}, - /* 252 */ {"var252", "undefined"}, - /* 253 */ {"var253", "undefined"}, - /* 254 */ {"var254", "undefined"}, - /* 255 */ {"var255", "Indicates a missing value []"}, -}; - -const struct ParmTable parm_table_ecmwf_131[256] = { - /* 0 */ {"var0", "undefined"}, - /* 1 */ {"2TAG2", "2m temperature anomaly of at least +2K [%]"}, - /* 2 */ {"2TAG1", "2m temperature anomaly of at least +1K [%]"}, - /* 3 */ {"2TAG0", "2m temperature anomaly of at least 0K [%]"}, - /* 4 */ {"2TALM1", "2m temperature anomaly of at most -1K [%]"}, - /* 5 */ {"2TALM2", "2m temperature anomaly of at most -2K [%]"}, - /* 6 */ {"TPAG20", "Total precipitation anomaly of at least 20 mm [%]"}, - /* 7 */ {"TPAG10", "Total precipitation anomaly of at least 10 mm [%]"}, - /* 8 */ {"TPAG0", "Total precipitation anomaly of at least 0 mm [%]"}, - /* 9 */ {"STAG0", "Surface temperature anomaly of at least 0K [%]"}, - /* 10 */ {"MSLAG0", "Mean sea level pressure anomaly of at least 0 Pa [%]"}, - /* 11 */ {"var11", "undefined"}, - /* 12 */ {"var12", "undefined"}, - /* 13 */ {"var13", "undefined"}, - /* 14 */ {"var14", "undefined"}, - /* 15 */ {"H0DIP", "Heigth of 0 degree isotherm probability [percentage]"}, - /* 16 */ {"HSLP", "Heigth of snowfall limit probability [percentage]"}, - /* 17 */ {"SAIP", "Showalter index probability [percentage]"}, - /* 18 */ {"WHIP", "Whiting index probability [percentage]"}, - /* 19 */ {"var19", "undefined"}, - /* 20 */ {"TALM2K", "Temperature anomaly less than -2 K [%]"}, - /* 21 */ {"TAG2K", "Temperature anomaly of at least +2 K [%]"}, - /* 22 */ {"TALM8K", "Temperature anomaly less than -8 K [%]"}, - /* 23 */ {"TALM4K", "Temperature anomaly less than -4 K [%]"}, - /* 24 */ {"TAG4K", "Temperature anomaly greater than +4 K [%]"}, - /* 25 */ {"TAG8K", "Temperature anomaly greater than +8 K [%]"}, - /* 26 */ {"var26", "undefined"}, - /* 27 */ {"var27", "undefined"}, - /* 28 */ {"var28", "undefined"}, - /* 29 */ {"var29", "undefined"}, - /* 30 */ {"var30", "undefined"}, - /* 31 */ {"var31", "undefined"}, - /* 32 */ {"var32", "undefined"}, - /* 33 */ {"var33", "undefined"}, - /* 34 */ {"var34", "undefined"}, - /* 35 */ {"var35", "undefined"}, - /* 36 */ {"var36", "undefined"}, - /* 37 */ {"var37", "undefined"}, - /* 38 */ {"var38", "undefined"}, - /* 39 */ {"var39", "undefined"}, - /* 40 */ {"var40", "undefined"}, - /* 41 */ {"var41", "undefined"}, - /* 42 */ {"var42", "undefined"}, - /* 43 */ {"var43", "undefined"}, - /* 44 */ {"var44", "undefined"}, - /* 45 */ {"var45", "undefined"}, - /* 46 */ {"var46", "undefined"}, - /* 47 */ {"var47", "undefined"}, - /* 48 */ {"var48", "undefined"}, - /* 49 */ {"10GP", "10 metre wind gust probability [percentage]"}, - /* 50 */ {"var50", "undefined"}, - /* 51 */ {"var51", "undefined"}, - /* 52 */ {"var52", "undefined"}, - /* 53 */ {"var53", "undefined"}, - /* 54 */ {"var54", "undefined"}, - /* 55 */ {"var55", "undefined"}, - /* 56 */ {"var56", "undefined"}, - /* 57 */ {"var57", "undefined"}, - /* 58 */ {"var58", "undefined"}, - /* 59 */ {"CAPEP", "Convective available potential energy probability [percentage]"}, - /* 60 */ {"TPG1", "Total precipitation of at least 1 mm [%]"}, - /* 61 */ {"TPG5", "Total precipitation of at least 5 mm [%]"}, - /* 62 */ {"TPG10", "Total precipitation of at least 10 mm [%]"}, - /* 63 */ {"TPG20", "Total precipitation of at least 20 mm [%]"}, - /* 64 */ {"TPL01", "Total precipitation less than 0.1 mm [%]"}, - /* 65 */ {"TPRL1", "Total precipitation rate less than 1 mm per day [%]"}, - /* 66 */ {"TPRG3", "Total precipitation rate of at least 3 mm per day [%]"}, - /* 67 */ {"TPRG5", "Total precipitation rate of at least 5 mm per day [%]"}, - /* 68 */ {"10SPG10", "10 metre Wind speed of at least 10 metre per second [%]"}, - /* 69 */ {"10SPG15", "10 metre Wind speed of at least 15 metre per second [%]"}, - /* 70 */ {"10FGG15", "10 metre Wind gust of at least 15 metre per second [%]"}, - /* 71 */ {"10FGG20", "10 metre Wind gust of at least 20 metre per second [%]"}, - /* 72 */ {"10FGG25", "10 metre Wind gust of at least 25 metre per second [%]"}, - /* 73 */ {"2TL273", "2 metre temperature less than 273.15 K [%]"}, - /* 74 */ {"SWHG2", "Significant wave height of at least 2 m [%]"}, - /* 75 */ {"SWHG4", "Significant wave height of at least 4 m [%]"}, - /* 76 */ {"SWHG6", "Significant wave height of at least 6 m [%]"}, - /* 77 */ {"SWHG8", "Significant wave height of at least 8 m [%]"}, - /* 78 */ {"MWPG8", "Mean wave period of at least 8 s [%]"}, - /* 79 */ {"MWPG10", "Mean wave period of at least 10 s [%]"}, - /* 80 */ {"MWPG12", "Mean wave period of at least 12 s [%]"}, - /* 81 */ {"MWPG15", "Mean wave period of at least 15 s [%]"}, - /* 82 */ {"TPG40", "Total precipitation of at least 40 mm [%]"}, - /* 83 */ {"TPG60", "Total precipitation of at least 60 mm [%]"}, - /* 84 */ {"TPG80", "Total precipitation of at least 80 mm [%]"}, - /* 85 */ {"TPG100", "Total precipitation of at least 100 mm [%]"}, - /* 86 */ {"TPG150", "Total precipitation of at least 150 mm [%]"}, - /* 87 */ {"TPG200", "Total precipitation of at least 200 mm [%]"}, - /* 88 */ {"TPG300", "Total precipitation of at least 300 mm [%]"}, - /* 89 */ {"var89", "undefined"}, - /* 90 */ {"var90", "undefined"}, - /* 91 */ {"var91", "undefined"}, - /* 92 */ {"var92", "undefined"}, - /* 93 */ {"var93", "undefined"}, - /* 94 */ {"var94", "undefined"}, - /* 95 */ {"var95", "undefined"}, - /* 96 */ {"var96", "undefined"}, - /* 97 */ {"var97", "undefined"}, - /* 98 */ {"var98", "undefined"}, - /* 99 */ {"var99", "undefined"}, - /* 100 */ {"var100", "undefined"}, - /* 101 */ {"var101", "undefined"}, - /* 102 */ {"var102", "undefined"}, - /* 103 */ {"var103", "undefined"}, - /* 104 */ {"var104", "undefined"}, - /* 105 */ {"var105", "undefined"}, - /* 106 */ {"var106", "undefined"}, - /* 107 */ {"var107", "undefined"}, - /* 108 */ {"var108", "undefined"}, - /* 109 */ {"var109", "undefined"}, - /* 110 */ {"var110", "undefined"}, - /* 111 */ {"var111", "undefined"}, - /* 112 */ {"var112", "undefined"}, - /* 113 */ {"var113", "undefined"}, - /* 114 */ {"var114", "undefined"}, - /* 115 */ {"var115", "undefined"}, - /* 116 */ {"var116", "undefined"}, - /* 117 */ {"var117", "undefined"}, - /* 118 */ {"var118", "undefined"}, - /* 119 */ {"var119", "undefined"}, - /* 120 */ {"var120", "undefined"}, - /* 121 */ {"var121", "undefined"}, - /* 122 */ {"var122", "undefined"}, - /* 123 */ {"var123", "undefined"}, - /* 124 */ {"var124", "undefined"}, - /* 125 */ {"var125", "undefined"}, - /* 126 */ {"var126", "undefined"}, - /* 127 */ {"var127", "undefined"}, - /* 128 */ {"var128", "undefined"}, - /* 129 */ {"ZP", "Geopotential probability [%]"}, - /* 130 */ {"TAP", "Temperature anomaly probability [percentage]"}, - /* 131 */ {"var131", "undefined"}, - /* 132 */ {"var132", "undefined"}, - /* 133 */ {"var133", "undefined"}, - /* 134 */ {"var134", "undefined"}, - /* 135 */ {"var135", "undefined"}, - /* 136 */ {"var136", "undefined"}, - /* 137 */ {"var137", "undefined"}, - /* 138 */ {"var138", "undefined"}, - /* 139 */ {"var139", "2 metre temperature probability [%]"}, - /* 140 */ {"var140", "undefined"}, - /* 141 */ {"var141", "undefined"}, - /* 142 */ {"var142", "undefined"}, - /* 143 */ {"var143", "undefined"}, - /* 144 */ {"SFP", "Snowfall probability [percentage]"}, - /* 145 */ {"var145", "undefined"}, - /* 146 */ {"var146", "undefined"}, - /* 147 */ {"var147", "undefined"}, - /* 148 */ {"var148", "undefined"}, - /* 149 */ {"var149", "undefined"}, - /* 150 */ {"var150", "undefined"}, - /* 151 */ {"var151", "Total precipitation probability [%]"}, - /* 152 */ {"var152", "undefined"}, - /* 153 */ {"var153", "undefined"}, - /* 154 */ {"var154", "undefined"}, - /* 155 */ {"var155", "undefined"}, - /* 156 */ {"var156", "undefined"}, - /* 157 */ {"var157", "undefined"}, - /* 158 */ {"var158", "undefined"}, - /* 159 */ {"var159", "undefined"}, - /* 160 */ {"var160", "undefined"}, - /* 161 */ {"var161", "undefined"}, - /* 162 */ {"var162", "undefined"}, - /* 163 */ {"var163", "undefined"}, - /* 164 */ {"TCCP", "Total cloud cover probability [percentage]"}, - /* 165 */ {"10SP", "10 metre speed probability [percentage]"}, - /* 166 */ {"var166", "undefined"}, - /* 167 */ {"2TP", "2 metre temperature probability [percentage]"}, - /* 168 */ {"var168", "undefined"}, - /* 169 */ {"var169", "undefined"}, - /* 170 */ {"var170", "undefined"}, - /* 171 */ {"var171", "undefined"}, - /* 172 */ {"var172", "undefined"}, - /* 173 */ {"var173", "undefined"}, - /* 174 */ {"var174", "undefined"}, - /* 175 */ {"var175", "undefined"}, - /* 176 */ {"var176", "undefined"}, - /* 177 */ {"var177", "undefined"}, - /* 178 */ {"var178", "undefined"}, - /* 179 */ {"var179", "undefined"}, - /* 180 */ {"var180", "undefined"}, - /* 181 */ {"var181", "undefined"}, - /* 182 */ {"var182", "undefined"}, - /* 183 */ {"var183", "undefined"}, - /* 184 */ {"var184", "undefined"}, - /* 185 */ {"var185", "undefined"}, - /* 186 */ {"var186", "undefined"}, - /* 187 */ {"var187", "undefined"}, - /* 188 */ {"var188", "undefined"}, - /* 189 */ {"var189", "undefined"}, - /* 190 */ {"var190", "undefined"}, - /* 191 */ {"var191", "undefined"}, - /* 192 */ {"var192", "undefined"}, - /* 193 */ {"var193", "undefined"}, - /* 194 */ {"var194", "undefined"}, - /* 195 */ {"var195", "undefined"}, - /* 196 */ {"var196", "undefined"}, - /* 197 */ {"var197", "undefined"}, - /* 198 */ {"var198", "undefined"}, - /* 199 */ {"var199", "undefined"}, - /* 200 */ {"var200", "undefined"}, - /* 201 */ {"MX2TP", "Maximum 2 metre temperature probability [percentage]"}, - /* 202 */ {"MN2TP", "Minimum 2 metre temperature probability [percentage]"}, - /* 203 */ {"var203", "undefined"}, - /* 204 */ {"var204", "undefined"}, - /* 205 */ {"var205", "undefined"}, - /* 206 */ {"var206", "undefined"}, - /* 207 */ {"var207", "undefined"}, - /* 208 */ {"var208", "undefined"}, - /* 209 */ {"var209", "undefined"}, - /* 210 */ {"var210", "undefined"}, - /* 211 */ {"var211", "undefined"}, - /* 212 */ {"var212", "undefined"}, - /* 213 */ {"var213", "undefined"}, - /* 214 */ {"var214", "undefined"}, - /* 215 */ {"var215", "undefined"}, - /* 216 */ {"var216", "undefined"}, - /* 217 */ {"var217", "undefined"}, - /* 218 */ {"var218", "undefined"}, - /* 219 */ {"var219", "undefined"}, - /* 220 */ {"var220", "undefined"}, - /* 221 */ {"var221", "undefined"}, - /* 222 */ {"var222", "undefined"}, - /* 223 */ {"var223", "undefined"}, - /* 224 */ {"var224", "undefined"}, - /* 225 */ {"var225", "undefined"}, - /* 226 */ {"var226", "undefined"}, - /* 227 */ {"var227", "undefined"}, - /* 228 */ {"TPP", "Total precipitation probability [percentage]"}, - /* 229 */ {"SWHP", "Significant wave height probability [percentage]"}, - /* 230 */ {"var230", "undefined"}, - /* 231 */ {"var231", "undefined"}, - /* 232 */ {"MWPP", "Mean wave period probability [percentage]"}, - /* 233 */ {"var233", "undefined"}, - /* 234 */ {"var234", "undefined"}, - /* 235 */ {"var235", "undefined"}, - /* 236 */ {"var236", "undefined"}, - /* 237 */ {"var237", "undefined"}, - /* 238 */ {"var238", "undefined"}, - /* 239 */ {"var239", "undefined"}, - /* 240 */ {"var240", "undefined"}, - /* 241 */ {"var241", "undefined"}, - /* 242 */ {"var242", "undefined"}, - /* 243 */ {"var243", "undefined"}, - /* 244 */ {"var244", "undefined"}, - /* 245 */ {"var245", "undefined"}, - /* 246 */ {"var246", "undefined"}, - /* 247 */ {"var247", "undefined"}, - /* 248 */ {"var248", "undefined"}, - /* 249 */ {"var249", "undefined"}, - /* 250 */ {"var250", "undefined"}, - /* 251 */ {"var251", "undefined"}, - /* 252 */ {"var252", "undefined"}, - /* 253 */ {"var253", "undefined"}, - /* 254 */ {"var254", "undefined"}, - /* 255 */ {"var255", "Indicates a missing value []"}, -}; - -const struct ParmTable parm_table_ecmwf_132[256] = { - /* 0 */ {"var0", "undefined"}, - /* 1 */ {"var1", "undefined"}, - /* 2 */ {"var2", "undefined"}, - /* 3 */ {"var3", "undefined"}, - /* 4 */ {"var4", "undefined"}, - /* 5 */ {"var5", "undefined"}, - /* 6 */ {"var6", "undefined"}, - /* 7 */ {"var7", "undefined"}, - /* 8 */ {"var8", "undefined"}, - /* 9 */ {"var9", "undefined"}, - /* 10 */ {"var10", "undefined"}, - /* 11 */ {"var11", "undefined"}, - /* 12 */ {"var12", "undefined"}, - /* 13 */ {"var13", "undefined"}, - /* 14 */ {"var14", "undefined"}, - /* 15 */ {"var15", "undefined"}, - /* 16 */ {"var16", "undefined"}, - /* 17 */ {"var17", "undefined"}, - /* 18 */ {"var18", "undefined"}, - /* 19 */ {"var19", "undefined"}, - /* 20 */ {"var20", "undefined"}, - /* 21 */ {"var21", "undefined"}, - /* 22 */ {"var22", "undefined"}, - /* 23 */ {"var23", "undefined"}, - /* 24 */ {"var24", "undefined"}, - /* 25 */ {"var25", "undefined"}, - /* 26 */ {"var26", "undefined"}, - /* 27 */ {"var27", "undefined"}, - /* 28 */ {"var28", "undefined"}, - /* 29 */ {"var29", "undefined"}, - /* 30 */ {"var30", "undefined"}, - /* 31 */ {"var31", "undefined"}, - /* 32 */ {"var32", "undefined"}, - /* 33 */ {"var33", "undefined"}, - /* 34 */ {"var34", "undefined"}, - /* 35 */ {"var35", "undefined"}, - /* 36 */ {"var36", "undefined"}, - /* 37 */ {"var37", "undefined"}, - /* 38 */ {"var38", "undefined"}, - /* 39 */ {"var39", "undefined"}, - /* 40 */ {"var40", "undefined"}, - /* 41 */ {"var41", "undefined"}, - /* 42 */ {"var42", "undefined"}, - /* 43 */ {"var43", "undefined"}, - /* 44 */ {"var44", "undefined"}, - /* 45 */ {"var45", "undefined"}, - /* 46 */ {"var46", "undefined"}, - /* 47 */ {"var47", "undefined"}, - /* 48 */ {"var48", "undefined"}, - /* 49 */ {"10FGI", "10 metre wind gust index [(-1 to 1)]"}, - /* 50 */ {"var50", "undefined"}, - /* 51 */ {"var51", "undefined"}, - /* 52 */ {"var52", "undefined"}, - /* 53 */ {"var53", "undefined"}, - /* 54 */ {"var54", "undefined"}, - /* 55 */ {"var55", "undefined"}, - /* 56 */ {"var56", "undefined"}, - /* 57 */ {"var57", "undefined"}, - /* 58 */ {"var58", "undefined"}, - /* 59 */ {"var59", "undefined"}, - /* 60 */ {"var60", "undefined"}, - /* 61 */ {"var61", "undefined"}, - /* 62 */ {"var62", "undefined"}, - /* 63 */ {"var63", "undefined"}, - /* 64 */ {"var64", "undefined"}, - /* 65 */ {"var65", "undefined"}, - /* 66 */ {"var66", "undefined"}, - /* 67 */ {"var67", "undefined"}, - /* 68 */ {"var68", "undefined"}, - /* 69 */ {"var69", "undefined"}, - /* 70 */ {"var70", "undefined"}, - /* 71 */ {"var71", "undefined"}, - /* 72 */ {"var72", "undefined"}, - /* 73 */ {"var73", "undefined"}, - /* 74 */ {"var74", "undefined"}, - /* 75 */ {"var75", "undefined"}, - /* 76 */ {"var76", "undefined"}, - /* 77 */ {"var77", "undefined"}, - /* 78 */ {"var78", "undefined"}, - /* 79 */ {"var79", "undefined"}, - /* 80 */ {"var80", "undefined"}, - /* 81 */ {"var81", "undefined"}, - /* 82 */ {"var82", "undefined"}, - /* 83 */ {"var83", "undefined"}, - /* 84 */ {"var84", "undefined"}, - /* 85 */ {"var85", "undefined"}, - /* 86 */ {"var86", "undefined"}, - /* 87 */ {"var87", "undefined"}, - /* 88 */ {"var88", "undefined"}, - /* 89 */ {"var89", "undefined"}, - /* 90 */ {"var90", "undefined"}, - /* 91 */ {"var91", "undefined"}, - /* 92 */ {"var92", "undefined"}, - /* 93 */ {"var93", "undefined"}, - /* 94 */ {"var94", "undefined"}, - /* 95 */ {"var95", "undefined"}, - /* 96 */ {"var96", "undefined"}, - /* 97 */ {"var97", "undefined"}, - /* 98 */ {"var98", "undefined"}, - /* 99 */ {"var99", "undefined"}, - /* 100 */ {"var100", "undefined"}, - /* 101 */ {"var101", "undefined"}, - /* 102 */ {"var102", "undefined"}, - /* 103 */ {"var103", "undefined"}, - /* 104 */ {"var104", "undefined"}, - /* 105 */ {"var105", "undefined"}, - /* 106 */ {"var106", "undefined"}, - /* 107 */ {"var107", "undefined"}, - /* 108 */ {"var108", "undefined"}, - /* 109 */ {"var109", "undefined"}, - /* 110 */ {"var110", "undefined"}, - /* 111 */ {"var111", "undefined"}, - /* 112 */ {"var112", "undefined"}, - /* 113 */ {"var113", "undefined"}, - /* 114 */ {"var114", "undefined"}, - /* 115 */ {"var115", "undefined"}, - /* 116 */ {"var116", "undefined"}, - /* 117 */ {"var117", "undefined"}, - /* 118 */ {"var118", "undefined"}, - /* 119 */ {"var119", "undefined"}, - /* 120 */ {"var120", "undefined"}, - /* 121 */ {"var121", "undefined"}, - /* 122 */ {"var122", "undefined"}, - /* 123 */ {"var123", "undefined"}, - /* 124 */ {"var124", "undefined"}, - /* 125 */ {"var125", "undefined"}, - /* 126 */ {"var126", "undefined"}, - /* 127 */ {"var127", "undefined"}, - /* 128 */ {"var128", "undefined"}, - /* 129 */ {"var129", "undefined"}, - /* 130 */ {"var130", "undefined"}, - /* 131 */ {"var131", "undefined"}, - /* 132 */ {"var132", "undefined"}, - /* 133 */ {"var133", "undefined"}, - /* 134 */ {"var134", "undefined"}, - /* 135 */ {"var135", "undefined"}, - /* 136 */ {"var136", "undefined"}, - /* 137 */ {"var137", "undefined"}, - /* 138 */ {"var138", "undefined"}, - /* 139 */ {"var139", "undefined"}, - /* 140 */ {"var140", "undefined"}, - /* 141 */ {"var141", "undefined"}, - /* 142 */ {"var142", "undefined"}, - /* 143 */ {"var143", "undefined"}, - /* 144 */ {"SFI", "Snowfall index [(-1 to 1)]"}, - /* 145 */ {"var145", "undefined"}, - /* 146 */ {"var146", "undefined"}, - /* 147 */ {"var147", "undefined"}, - /* 148 */ {"var148", "undefined"}, - /* 149 */ {"var149", "undefined"}, - /* 150 */ {"var150", "undefined"}, - /* 151 */ {"var151", "undefined"}, - /* 152 */ {"var152", "undefined"}, - /* 153 */ {"var153", "undefined"}, - /* 154 */ {"var154", "undefined"}, - /* 155 */ {"var155", "undefined"}, - /* 156 */ {"var156", "undefined"}, - /* 157 */ {"var157", "undefined"}, - /* 158 */ {"var158", "undefined"}, - /* 159 */ {"var159", "undefined"}, - /* 160 */ {"var160", "undefined"}, - /* 161 */ {"var161", "undefined"}, - /* 162 */ {"var162", "undefined"}, - /* 163 */ {"var163", "undefined"}, - /* 164 */ {"var164", "undefined"}, - /* 165 */ {"10WSI", "10 metre speed index [(-1 to 1)]"}, - /* 166 */ {"var166", "undefined"}, - /* 167 */ {"2TI", "2 metre temperature index [(-1 to 1)]"}, - /* 168 */ {"var168", "undefined"}, - /* 169 */ {"var169", "undefined"}, - /* 170 */ {"var170", "undefined"}, - /* 171 */ {"var171", "undefined"}, - /* 172 */ {"var172", "undefined"}, - /* 173 */ {"var173", "undefined"}, - /* 174 */ {"var174", "undefined"}, - /* 175 */ {"var175", "undefined"}, - /* 176 */ {"var176", "undefined"}, - /* 177 */ {"var177", "undefined"}, - /* 178 */ {"var178", "undefined"}, - /* 179 */ {"var179", "undefined"}, - /* 180 */ {"var180", "undefined"}, - /* 181 */ {"var181", "undefined"}, - /* 182 */ {"var182", "undefined"}, - /* 183 */ {"var183", "undefined"}, - /* 184 */ {"var184", "undefined"}, - /* 185 */ {"var185", "undefined"}, - /* 186 */ {"var186", "undefined"}, - /* 187 */ {"var187", "undefined"}, - /* 188 */ {"var188", "undefined"}, - /* 189 */ {"var189", "undefined"}, - /* 190 */ {"var190", "undefined"}, - /* 191 */ {"var191", "undefined"}, - /* 192 */ {"var192", "undefined"}, - /* 193 */ {"var193", "undefined"}, - /* 194 */ {"var194", "undefined"}, - /* 195 */ {"var195", "undefined"}, - /* 196 */ {"var196", "undefined"}, - /* 197 */ {"var197", "undefined"}, - /* 198 */ {"var198", "undefined"}, - /* 199 */ {"var199", "undefined"}, - /* 200 */ {"MAXSWHI", "Maximum of significant wave height index [(-1 to 1)]"}, - /* 201 */ {"MX2TI", "Maximum temperature at 2 metres index [(-1 to 1)]"}, - /* 202 */ {"MN2TI", "Minimum temperature at 2 metres index [(-1 to 1)]"}, - /* 203 */ {"var203", "undefined"}, - /* 204 */ {"var204", "undefined"}, - /* 205 */ {"var205", "undefined"}, - /* 206 */ {"var206", "undefined"}, - /* 207 */ {"var207", "undefined"}, - /* 208 */ {"var208", "undefined"}, - /* 209 */ {"var209", "undefined"}, - /* 210 */ {"var210", "undefined"}, - /* 211 */ {"var211", "undefined"}, - /* 212 */ {"var212", "undefined"}, - /* 213 */ {"var213", "undefined"}, - /* 214 */ {"var214", "undefined"}, - /* 215 */ {"var215", "undefined"}, - /* 216 */ {"var216", "undefined"}, - /* 217 */ {"var217", "undefined"}, - /* 218 */ {"var218", "undefined"}, - /* 219 */ {"var219", "undefined"}, - /* 220 */ {"var220", "undefined"}, - /* 221 */ {"var221", "undefined"}, - /* 222 */ {"var222", "undefined"}, - /* 223 */ {"var223", "undefined"}, - /* 224 */ {"var224", "undefined"}, - /* 225 */ {"var225", "undefined"}, - /* 226 */ {"var226", "undefined"}, - /* 227 */ {"var227", "undefined"}, - /* 228 */ {"TPI", "Total precipitation index [(-1 to 1)]"}, - /* 229 */ {"var229", "undefined"}, - /* 230 */ {"var230", "undefined"}, - /* 231 */ {"var231", "undefined"}, - /* 232 */ {"var232", "undefined"}, - /* 233 */ {"var233", "undefined"}, - /* 234 */ {"var234", "undefined"}, - /* 235 */ {"var235", "undefined"}, - /* 236 */ {"var236", "undefined"}, - /* 237 */ {"var237", "undefined"}, - /* 238 */ {"var238", "undefined"}, - /* 239 */ {"var239", "undefined"}, - /* 240 */ {"var240", "undefined"}, - /* 241 */ {"var241", "undefined"}, - /* 242 */ {"var242", "undefined"}, - /* 243 */ {"var243", "undefined"}, - /* 244 */ {"var244", "undefined"}, - /* 245 */ {"var245", "undefined"}, - /* 246 */ {"var246", "undefined"}, - /* 247 */ {"var247", "undefined"}, - /* 248 */ {"var248", "undefined"}, - /* 249 */ {"var249", "undefined"}, - /* 250 */ {"var250", "undefined"}, - /* 251 */ {"var251", "undefined"}, - /* 252 */ {"var252", "undefined"}, - /* 253 */ {"var253", "undefined"}, - /* 254 */ {"var254", "undefined"}, - /* 255 */ {"var255", "Indicates a missing value []"}, -}; - -const struct ParmTable parm_table_ecmwf_133[256] = { - /* 0 */ {"var0", "undefined"}, - /* 1 */ {"2TPLM10", "2m temperature probability less than -10 C [%]"}, - /* 2 */ {"2TPLM5", "2m temperature probability less than -5 C [%]"}, - /* 3 */ {"2TPL0", "2m temperature probability less than 0 C [%]"}, - /* 4 */ {"2TPL5", "2m temperature probability less than 5 C [%]"}, - /* 5 */ {"2TPL10", "2m temperature probability less than 10 C [%]"}, - /* 6 */ {"2TPG25", "2m temperature probability greater than 25 C [%]"}, - /* 7 */ {"2TPG30", "2m temperature probability greater than 30 C [%]"}, - /* 8 */ {"2TPG35", "2m temperature probability greater than 35 C [%]"}, - /* 9 */ {"2TPG40", "2m temperature probability greater than 40 C [%]"}, - /* 10 */ {"2TPG45", "2m temperature probability greater than 45 C [%]"}, - /* 11 */ {"MN2TPLM10", "Minimum 2 metre temperature probability less than -10 C [%]"}, - /* 12 */ {"MN2TPLM5", "Minimum 2 metre temperature probability less than -5 C [%]"}, - /* 13 */ {"MN2TPL0", "Minimum 2 metre temperature probability less than 0 C [%]"}, - /* 14 */ {"MN2TPL5", "Minimum 2 metre temperature probability less than 5 C [%]"}, - /* 15 */ {"MN2TPL10", "Minimum 2 metre temperature probability less than 10 C [%]"}, - /* 16 */ {"MX2TPG25", "Maximum 2 metre temperature probability greater than 25 C [%]"}, - /* 17 */ {"MX2TPG30", "Maximum 2 metre temperature probability greater than 30 C [%]"}, - /* 18 */ {"MX2TPG35", "Maximum 2 metre temperature probability greater than 35 C [%]"}, - /* 19 */ {"MX2TPG40", "Maximum 2 metre temperature probability greater than 40 C [%]"}, - /* 20 */ {"MX2TPG45", "Maximum 2 metre temperature probability greater than 45 C [%]"}, - /* 21 */ {"10SPG10", "10 metre wind speed probability of at least 10 m/s [%]"}, - /* 22 */ {"10SPG15", "10 metre wind speed probability of at least 15 m/s [%]"}, - /* 23 */ {"10SPG20", "10 metre wind speed probability of at least 20 m/s [%]"}, - /* 24 */ {"10SPG35", "10 metre wind speed probability of at least 35 m/s [%]"}, - /* 25 */ {"10SPG50", "10 metre wind speed probability of at least 50 m/s [%]"}, - /* 26 */ {"10GPG20", "10 metre wind gust probability of at least 20 m/s [%]"}, - /* 27 */ {"10GPG35", "10 metre wind gust probability of at least 35 m/s [%]"}, - /* 28 */ {"10GPG50", "10 metre wind gust probability of at least 50 m/s [%]"}, - /* 29 */ {"10GPG75", "10 metre wind gust probability of at least 75 m/s [%]"}, - /* 30 */ {"10GPG100", "10 metre wind gust probability of at least 100 m/s [%]"}, - /* 31 */ {"TPPG1", "Total precipitation probability of at least 1 mm [%]"}, - /* 32 */ {"TPPG5", "Total precipitation probability of at least 5 mm [%]"}, - /* 33 */ {"TPPG10", "Total precipitation probability of at least 10 mm [%]"}, - /* 34 */ {"TPPG20", "Total precipitation probability of at least 20 mm [%]"}, - /* 35 */ {"TPPG40", "Total precipitation probability of at least 40 mm [%]"}, - /* 36 */ {"TPPG60", "Total precipitation probability of at least 60 mm [%]"}, - /* 37 */ {"TPPG80", "Total precipitation probability of at least 80 mm [%]"}, - /* 38 */ {"TPPG100", "Total precipitation probability of at least 100 mm [%]"}, - /* 39 */ {"TPPG150", "Total precipitation probability of at least 150 mm [%]"}, - /* 40 */ {"TPPG200", "Total precipitation probability of at least 200 mm [%]"}, - /* 41 */ {"TPPG300", "Total precipitation probability of at least 300 mm [%]"}, - /* 42 */ {"SFPG1", "Snowfall probability of at least 1 mm [%]"}, - /* 43 */ {"SFPG5", "Snowfall probability of at least 5 mm [%]"}, - /* 44 */ {"SFPG10", "Snowfall probability of at least 10 mm [%]"}, - /* 45 */ {"SFPG20", "Snowfall probability of at least 20 mm [%]"}, - /* 46 */ {"SFPG40", "Snowfall probability of at least 40 mm [%]"}, - /* 47 */ {"SFPG60", "Snowfall probability of at least 60 mm [%]"}, - /* 48 */ {"SFPG80", "Snowfall probability of at least 80 mm [%]"}, - /* 49 */ {"SFPG100", "Snowfall probability of at least 100 mm [%]"}, - /* 50 */ {"SFPG150", "Snowfall probability of at least 150 mm [%]"}, - /* 51 */ {"SFPG200", "Snowfall probability of at least 200 mm [%]"}, - /* 52 */ {"SFPG300", "Snowfall probability of at least 300 mm [%]"}, - /* 53 */ {"TCCPG10", "Total Cloud Cover probability greater than 10% [%]"}, - /* 54 */ {"TCCPG20", "Total Cloud Cover probability greater than 20% [%]"}, - /* 55 */ {"TCCPG30", "Total Cloud Cover probability greater than 30% [%]"}, - /* 56 */ {"TCCPG40", "Total Cloud Cover probability greater than 40% [%]"}, - /* 57 */ {"TCCPG50", "Total Cloud Cover probability greater than 50% [%]"}, - /* 58 */ {"TCCPG60", "Total Cloud Cover probability greater than 60% [%]"}, - /* 59 */ {"TCCPG70", "Total Cloud Cover probability greater than 70% [%]"}, - /* 60 */ {"TCCPG80", "Total Cloud Cover probability greater than 80% [%]"}, - /* 61 */ {"TCCPG90", "Total Cloud Cover probability greater than 90% [%]"}, - /* 62 */ {"TCCPG99", "Total Cloud Cover probability greater than 99% [%]"}, - /* 63 */ {"HCCPG10", "High Cloud Cover probability greater than 10% [%]"}, - /* 64 */ {"HCCPG20", "High Cloud Cover probability greater than 20% [%]"}, - /* 65 */ {"HCCPG30", "High Cloud Cover probability greater than 30% [%]"}, - /* 66 */ {"HCCPG40", "High Cloud Cover probability greater than 40% [%]"}, - /* 67 */ {"HCCPG50", "High Cloud Cover probability greater than 50% [%]"}, - /* 68 */ {"HCCPG60", "High Cloud Cover probability greater than 60% [%]"}, - /* 69 */ {"HCCPG70", "High Cloud Cover probability greater than 70% [%]"}, - /* 70 */ {"HCCPG80", "High Cloud Cover probability greater than 80% [%]"}, - /* 71 */ {"HCCPG90", "High Cloud Cover probability greater than 90% [%]"}, - /* 72 */ {"HCCPG99", "High Cloud Cover probability greater than 99% [%]"}, - /* 73 */ {"MCCPG10", "Medium Cloud Cover probability greater than 10% [%]"}, - /* 74 */ {"MCCPG20", "Medium Cloud Cover probability greater than 20% [%]"}, - /* 75 */ {"MCCPG30", "Medium Cloud Cover probability greater than 30% [%]"}, - /* 76 */ {"MCCPG40", "Medium Cloud Cover probability greater than 40% [%]"}, - /* 77 */ {"MCCPG50", "Medium Cloud Cover probability greater than 50% [%]"}, - /* 78 */ {"MCCPG60", "Medium Cloud Cover probability greater than 60% [%]"}, - /* 79 */ {"MCCPG70", "Medium Cloud Cover probability greater than 70% [%]"}, - /* 80 */ {"MCCPG80", "Medium Cloud Cover probability greater than 80% [%]"}, - /* 81 */ {"MCCPG90", "Medium Cloud Cover probability greater than 90% [%]"}, - /* 82 */ {"MCCPG99", "Medium Cloud Cover probability greater than 99% [%]"}, - /* 83 */ {"LCCPG10", "Low Cloud Cover probability greater than 10% [%]"}, - /* 84 */ {"LCCPG20", "Low Cloud Cover probability greater than 20% [%]"}, - /* 85 */ {"LCCPG30", "Low Cloud Cover probability greater than 30% [%]"}, - /* 86 */ {"LCCPG40", "Low Cloud Cover probability greater than 40% [%]"}, - /* 87 */ {"LCCPG50", "Low Cloud Cover probability greater than 50% [%]"}, - /* 88 */ {"LCCPG60", "Low Cloud Cover probability greater than 60% [%]"}, - /* 89 */ {"LCCPG70", "Low Cloud Cover probability greater than 70% [%]"}, - /* 90 */ {"LCCPG80", "Low Cloud Cover probability greater than 80% [%]"}, - /* 91 */ {"LCCPG90", "Low Cloud Cover probability greater than 90% [%]"}, - /* 92 */ {"LCCPG99", "Low Cloud Cover probability greater than 99% [%]"}, - /* 93 */ {"var93", "undefined"}, - /* 94 */ {"var94", "undefined"}, - /* 95 */ {"var95", "undefined"}, - /* 96 */ {"var96", "undefined"}, - /* 97 */ {"var97", "undefined"}, - /* 98 */ {"var98", "undefined"}, - /* 99 */ {"var99", "undefined"}, - /* 100 */ {"var100", "undefined"}, - /* 101 */ {"var101", "undefined"}, - /* 102 */ {"var102", "undefined"}, - /* 103 */ {"var103", "undefined"}, - /* 104 */ {"var104", "undefined"}, - /* 105 */ {"var105", "undefined"}, - /* 106 */ {"var106", "undefined"}, - /* 107 */ {"var107", "undefined"}, - /* 108 */ {"var108", "undefined"}, - /* 109 */ {"var109", "undefined"}, - /* 110 */ {"var110", "undefined"}, - /* 111 */ {"var111", "undefined"}, - /* 112 */ {"var112", "undefined"}, - /* 113 */ {"var113", "undefined"}, - /* 114 */ {"var114", "undefined"}, - /* 115 */ {"var115", "undefined"}, - /* 116 */ {"var116", "undefined"}, - /* 117 */ {"var117", "undefined"}, - /* 118 */ {"var118", "undefined"}, - /* 119 */ {"var119", "undefined"}, - /* 120 */ {"var120", "undefined"}, - /* 121 */ {"var121", "undefined"}, - /* 122 */ {"var122", "undefined"}, - /* 123 */ {"var123", "undefined"}, - /* 124 */ {"var124", "undefined"}, - /* 125 */ {"var125", "undefined"}, - /* 126 */ {"var126", "undefined"}, - /* 127 */ {"var127", "undefined"}, - /* 128 */ {"var128", "undefined"}, - /* 129 */ {"var129", "undefined"}, - /* 130 */ {"var130", "undefined"}, - /* 131 */ {"var131", "undefined"}, - /* 132 */ {"var132", "undefined"}, - /* 133 */ {"var133", "undefined"}, - /* 134 */ {"var134", "undefined"}, - /* 135 */ {"var135", "undefined"}, - /* 136 */ {"var136", "undefined"}, - /* 137 */ {"var137", "undefined"}, - /* 138 */ {"var138", "undefined"}, - /* 139 */ {"var139", "undefined"}, - /* 140 */ {"var140", "undefined"}, - /* 141 */ {"var141", "undefined"}, - /* 142 */ {"var142", "undefined"}, - /* 143 */ {"var143", "undefined"}, - /* 144 */ {"var144", "undefined"}, - /* 145 */ {"var145", "undefined"}, - /* 146 */ {"var146", "undefined"}, - /* 147 */ {"var147", "undefined"}, - /* 148 */ {"var148", "undefined"}, - /* 149 */ {"var149", "undefined"}, - /* 150 */ {"var150", "undefined"}, - /* 151 */ {"var151", "undefined"}, - /* 152 */ {"var152", "undefined"}, - /* 153 */ {"var153", "undefined"}, - /* 154 */ {"var154", "undefined"}, - /* 155 */ {"var155", "undefined"}, - /* 156 */ {"var156", "undefined"}, - /* 157 */ {"var157", "undefined"}, - /* 158 */ {"var158", "undefined"}, - /* 159 */ {"var159", "undefined"}, - /* 160 */ {"var160", "undefined"}, - /* 161 */ {"var161", "undefined"}, - /* 162 */ {"var162", "undefined"}, - /* 163 */ {"var163", "undefined"}, - /* 164 */ {"var164", "undefined"}, - /* 165 */ {"var165", "undefined"}, - /* 166 */ {"var166", "undefined"}, - /* 167 */ {"var167", "undefined"}, - /* 168 */ {"var168", "undefined"}, - /* 169 */ {"var169", "undefined"}, - /* 170 */ {"var170", "undefined"}, - /* 171 */ {"var171", "undefined"}, - /* 172 */ {"var172", "undefined"}, - /* 173 */ {"var173", "undefined"}, - /* 174 */ {"var174", "undefined"}, - /* 175 */ {"var175", "undefined"}, - /* 176 */ {"var176", "undefined"}, - /* 177 */ {"var177", "undefined"}, - /* 178 */ {"var178", "undefined"}, - /* 179 */ {"var179", "undefined"}, - /* 180 */ {"var180", "undefined"}, - /* 181 */ {"var181", "undefined"}, - /* 182 */ {"var182", "undefined"}, - /* 183 */ {"var183", "undefined"}, - /* 184 */ {"var184", "undefined"}, - /* 185 */ {"var185", "undefined"}, - /* 186 */ {"var186", "undefined"}, - /* 187 */ {"var187", "undefined"}, - /* 188 */ {"var188", "undefined"}, - /* 189 */ {"var189", "undefined"}, - /* 190 */ {"var190", "undefined"}, - /* 191 */ {"var191", "undefined"}, - /* 192 */ {"var192", "undefined"}, - /* 193 */ {"var193", "undefined"}, - /* 194 */ {"var194", "undefined"}, - /* 195 */ {"var195", "undefined"}, - /* 196 */ {"var196", "undefined"}, - /* 197 */ {"var197", "undefined"}, - /* 198 */ {"var198", "undefined"}, - /* 199 */ {"var199", "undefined"}, - /* 200 */ {"var200", "undefined"}, - /* 201 */ {"var201", "undefined"}, - /* 202 */ {"var202", "undefined"}, - /* 203 */ {"var203", "undefined"}, - /* 204 */ {"var204", "undefined"}, - /* 205 */ {"var205", "undefined"}, - /* 206 */ {"var206", "undefined"}, - /* 207 */ {"var207", "undefined"}, - /* 208 */ {"var208", "undefined"}, - /* 209 */ {"var209", "undefined"}, - /* 210 */ {"var210", "undefined"}, - /* 211 */ {"var211", "undefined"}, - /* 212 */ {"var212", "undefined"}, - /* 213 */ {"var213", "undefined"}, - /* 214 */ {"var214", "undefined"}, - /* 215 */ {"var215", "undefined"}, - /* 216 */ {"var216", "undefined"}, - /* 217 */ {"var217", "undefined"}, - /* 218 */ {"var218", "undefined"}, - /* 219 */ {"var219", "undefined"}, - /* 220 */ {"var220", "undefined"}, - /* 221 */ {"var221", "undefined"}, - /* 222 */ {"var222", "undefined"}, - /* 223 */ {"var223", "undefined"}, - /* 224 */ {"var224", "undefined"}, - /* 225 */ {"var225", "undefined"}, - /* 226 */ {"var226", "undefined"}, - /* 227 */ {"var227", "undefined"}, - /* 228 */ {"var228", "undefined"}, - /* 229 */ {"var229", "undefined"}, - /* 230 */ {"var230", "undefined"}, - /* 231 */ {"var231", "undefined"}, - /* 232 */ {"var232", "undefined"}, - /* 233 */ {"var233", "undefined"}, - /* 234 */ {"var234", "undefined"}, - /* 235 */ {"var235", "undefined"}, - /* 236 */ {"var236", "undefined"}, - /* 237 */ {"var237", "undefined"}, - /* 238 */ {"var238", "undefined"}, - /* 239 */ {"var239", "undefined"}, - /* 240 */ {"var240", "undefined"}, - /* 241 */ {"var241", "undefined"}, - /* 242 */ {"var242", "undefined"}, - /* 243 */ {"var243", "undefined"}, - /* 244 */ {"var244", "undefined"}, - /* 245 */ {"var245", "undefined"}, - /* 246 */ {"var246", "undefined"}, - /* 247 */ {"var247", "undefined"}, - /* 248 */ {"var248", "undefined"}, - /* 249 */ {"var249", "undefined"}, - /* 250 */ {"var250", "undefined"}, - /* 251 */ {"var251", "undefined"}, - /* 252 */ {"var252", "undefined"}, - /* 253 */ {"var253", "undefined"}, - /* 254 */ {"var254", "undefined"}, - /* 255 */ {"var255", "undefined"}, -}; - -const struct ParmTable parm_table_ecmwf_140[256] = { - /* 0 */ {"var0", "undefined"}, - /* 1 */ {"var1", "undefined"}, - /* 2 */ {"var2", "undefined"}, - /* 3 */ {"var3", "undefined"}, - /* 4 */ {"var4", "undefined"}, - /* 5 */ {"var5", "undefined"}, - /* 6 */ {"var6", "undefined"}, - /* 7 */ {"var7", "undefined"}, - /* 8 */ {"var8", "undefined"}, - /* 9 */ {"var9", "undefined"}, - /* 10 */ {"var10", "undefined"}, - /* 11 */ {"var11", "undefined"}, - /* 12 */ {"var12", "undefined"}, - /* 13 */ {"var13", "undefined"}, - /* 14 */ {"var14", "undefined"}, - /* 15 */ {"var15", "undefined"}, - /* 16 */ {"var16", "undefined"}, - /* 17 */ {"var17", "undefined"}, - /* 18 */ {"var18", "undefined"}, - /* 19 */ {"var19", "undefined"}, - /* 20 */ {"var20", "undefined"}, - /* 21 */ {"var21", "undefined"}, - /* 22 */ {"var22", "undefined"}, - /* 23 */ {"var23", "undefined"}, - /* 24 */ {"var24", "undefined"}, - /* 25 */ {"var25", "undefined"}, - /* 26 */ {"var26", "undefined"}, - /* 27 */ {"var27", "undefined"}, - /* 28 */ {"var28", "undefined"}, - /* 29 */ {"var29", "undefined"}, - /* 30 */ {"var30", "undefined"}, - /* 31 */ {"var31", "undefined"}, - /* 32 */ {"var32", "undefined"}, - /* 33 */ {"var33", "undefined"}, - /* 34 */ {"var34", "undefined"}, - /* 35 */ {"var35", "undefined"}, - /* 36 */ {"var36", "undefined"}, - /* 37 */ {"var37", "undefined"}, - /* 38 */ {"var38", "undefined"}, - /* 39 */ {"var39", "undefined"}, - /* 40 */ {"var40", "undefined"}, - /* 41 */ {"var41", "undefined"}, - /* 42 */ {"var42", "undefined"}, - /* 43 */ {"var43", "undefined"}, - /* 44 */ {"var44", "undefined"}, - /* 45 */ {"var45", "undefined"}, - /* 46 */ {"var46", "undefined"}, - /* 47 */ {"var47", "undefined"}, - /* 48 */ {"var48", "undefined"}, - /* 49 */ {"var49", "undefined"}, - /* 50 */ {"var50", "undefined"}, - /* 51 */ {"var51", "undefined"}, - /* 52 */ {"var52", "undefined"}, - /* 53 */ {"var53", "undefined"}, - /* 54 */ {"var54", "undefined"}, - /* 55 */ {"var55", "undefined"}, - /* 56 */ {"var56", "undefined"}, - /* 57 */ {"var57", "undefined"}, - /* 58 */ {"var58", "undefined"}, - /* 59 */ {"var59", "undefined"}, - /* 60 */ {"var60", "undefined"}, - /* 61 */ {"var61", "undefined"}, - /* 62 */ {"var62", "undefined"}, - /* 63 */ {"var63", "undefined"}, - /* 64 */ {"var64", "undefined"}, - /* 65 */ {"var65", "undefined"}, - /* 66 */ {"var66", "undefined"}, - /* 67 */ {"var67", "undefined"}, - /* 68 */ {"var68", "undefined"}, - /* 69 */ {"var69", "undefined"}, - /* 70 */ {"var70", "undefined"}, - /* 71 */ {"var71", "undefined"}, - /* 72 */ {"var72", "undefined"}, - /* 73 */ {"var73", "undefined"}, - /* 74 */ {"var74", "undefined"}, - /* 75 */ {"var75", "undefined"}, - /* 76 */ {"var76", "undefined"}, - /* 77 */ {"var77", "undefined"}, - /* 78 */ {"var78", "undefined"}, - /* 79 */ {"var79", "undefined"}, - /* 80 */ {"var80", "undefined"}, - /* 81 */ {"var81", "undefined"}, - /* 82 */ {"var82", "undefined"}, - /* 83 */ {"var83", "undefined"}, - /* 84 */ {"var84", "undefined"}, - /* 85 */ {"var85", "undefined"}, - /* 86 */ {"var86", "undefined"}, - /* 87 */ {"var87", "undefined"}, - /* 88 */ {"var88", "undefined"}, - /* 89 */ {"var89", "undefined"}, - /* 90 */ {"var90", "undefined"}, - /* 91 */ {"var91", "undefined"}, - /* 92 */ {"var92", "undefined"}, - /* 93 */ {"var93", "undefined"}, - /* 94 */ {"var94", "undefined"}, - /* 95 */ {"var95", "undefined"}, - /* 96 */ {"var96", "undefined"}, - /* 97 */ {"var97", "undefined"}, - /* 98 */ {"var98", "undefined"}, - /* 99 */ {"var99", "undefined"}, - /* 100 */ {"var100", "undefined"}, - /* 101 */ {"var101", "undefined"}, - /* 102 */ {"var102", "undefined"}, - /* 103 */ {"var103", "undefined"}, - /* 104 */ {"var104", "undefined"}, - /* 105 */ {"var105", "undefined"}, - /* 106 */ {"var106", "undefined"}, - /* 107 */ {"var107", "undefined"}, - /* 108 */ {"var108", "undefined"}, - /* 109 */ {"var109", "undefined"}, - /* 110 */ {"var110", "undefined"}, - /* 111 */ {"var111", "undefined"}, - /* 112 */ {"var112", "undefined"}, - /* 113 */ {"var113", "undefined"}, - /* 114 */ {"var114", "undefined"}, - /* 115 */ {"var115", "undefined"}, - /* 116 */ {"var116", "undefined"}, - /* 117 */ {"var117", "undefined"}, - /* 118 */ {"var118", "undefined"}, - /* 119 */ {"var119", "undefined"}, - /* 120 */ {"var120", "undefined"}, - /* 121 */ {"var121", "undefined"}, - /* 122 */ {"var122", "undefined"}, - /* 123 */ {"var123", "undefined"}, - /* 124 */ {"var124", "undefined"}, - /* 125 */ {"var125", "undefined"}, - /* 126 */ {"var126", "undefined"}, - /* 127 */ {"var127", "undefined"}, - /* 128 */ {"var128", "undefined"}, - /* 129 */ {"var129", "undefined"}, - /* 130 */ {"var130", "undefined"}, - /* 131 */ {"var131", "undefined"}, - /* 132 */ {"var132", "undefined"}, - /* 133 */ {"var133", "undefined"}, - /* 134 */ {"var134", "undefined"}, - /* 135 */ {"var135", "undefined"}, - /* 136 */ {"var136", "undefined"}, - /* 137 */ {"var137", "undefined"}, - /* 138 */ {"var138", "undefined"}, - /* 139 */ {"var139", "undefined"}, - /* 140 */ {"var140", "undefined"}, - /* 141 */ {"var141", "undefined"}, - /* 142 */ {"var142", "undefined"}, - /* 143 */ {"var143", "undefined"}, - /* 144 */ {"var144", "undefined"}, - /* 145 */ {"var145", "undefined"}, - /* 146 */ {"var146", "undefined"}, - /* 147 */ {"var147", "undefined"}, - /* 148 */ {"var148", "undefined"}, - /* 149 */ {"var149", "undefined"}, - /* 150 */ {"var150", "undefined"}, - /* 151 */ {"var151", "undefined"}, - /* 152 */ {"var152", "undefined"}, - /* 153 */ {"var153", "undefined"}, - /* 154 */ {"var154", "undefined"}, - /* 155 */ {"var155", "undefined"}, - /* 156 */ {"var156", "undefined"}, - /* 157 */ {"var157", "undefined"}, - /* 158 */ {"var158", "undefined"}, - /* 159 */ {"var159", "undefined"}, - /* 160 */ {"var160", "undefined"}, - /* 161 */ {"var161", "undefined"}, - /* 162 */ {"var162", "undefined"}, - /* 163 */ {"var163", "undefined"}, - /* 164 */ {"var164", "undefined"}, - /* 165 */ {"var165", "undefined"}, - /* 166 */ {"var166", "undefined"}, - /* 167 */ {"var167", "undefined"}, - /* 168 */ {"var168", "undefined"}, - /* 169 */ {"var169", "undefined"}, - /* 170 */ {"var170", "undefined"}, - /* 171 */ {"var171", "undefined"}, - /* 172 */ {"var172", "undefined"}, - /* 173 */ {"var173", "undefined"}, - /* 174 */ {"var174", "undefined"}, - /* 175 */ {"var175", "undefined"}, - /* 176 */ {"var176", "undefined"}, - /* 177 */ {"var177", "undefined"}, - /* 178 */ {"var178", "undefined"}, - /* 179 */ {"var179", "undefined"}, - /* 180 */ {"var180", "undefined"}, - /* 181 */ {"var181", "undefined"}, - /* 182 */ {"var182", "undefined"}, - /* 183 */ {"var183", "undefined"}, - /* 184 */ {"var184", "undefined"}, - /* 185 */ {"var185", "undefined"}, - /* 186 */ {"var186", "undefined"}, - /* 187 */ {"var187", "undefined"}, - /* 188 */ {"var188", "undefined"}, - /* 189 */ {"var189", "undefined"}, - /* 190 */ {"var190", "undefined"}, - /* 191 */ {"var191", "undefined"}, - /* 192 */ {"var192", "undefined"}, - /* 193 */ {"var193", "undefined"}, - /* 194 */ {"var194", "undefined"}, - /* 195 */ {"var195", "undefined"}, - /* 196 */ {"var196", "undefined"}, - /* 197 */ {"var197", "undefined"}, - /* 198 */ {"var198", "undefined"}, - /* 199 */ {"var199", "undefined"}, - /* 200 */ {"MAXSWH", "Maximum of significant wave height [m]"}, - /* 201 */ {"var201", "undefined"}, - /* 202 */ {"var202", "undefined"}, - /* 203 */ {"var203", "undefined"}, - /* 204 */ {"var204", "undefined"}, - /* 205 */ {"var205", "undefined"}, - /* 206 */ {"var206", "undefined"}, - /* 207 */ {"var207", "undefined"}, - /* 208 */ {"var208", "undefined"}, - /* 209 */ {"var209", "undefined"}, - /* 210 */ {"var210", "undefined"}, - /* 211 */ {"var211", "undefined"}, - /* 212 */ {"var212", "undefined"}, - /* 213 */ {"var213", "undefined"}, - /* 214 */ {"var214", "undefined"}, - /* 215 */ {"UST", "U-component stokes drift [m s**-1]"}, - /* 216 */ {"VST", "V-component stokes drift [m s**-1]"}, - /* 217 */ {"TMAX", "Period corresponding to maximum individual wave height [s]"}, - /* 218 */ {"HMAX", "Maximum individual wave height [m]"}, - /* 219 */ {"WMB", "Model bathymetry [m]"}, - /* 220 */ {"MP1", "Mean wave period based on first moment [s]"}, - /* 221 */ {"MP2", "Mean wave period based on second moment [s]"}, - /* 222 */ {"WDW", "Wave spectral directional width []"}, - /* 223 */ {"P1WW", "Mean wave period based on first moment for wind waves [s]"}, - /* 224 */ {"P2WW", "Mean wave period based on second moment for wind waves [s]"}, - /* 225 */ {"DWWW", "Wave spectral directional width for wind waves []"}, - /* 226 */ {"P1PS", "Mean wave period based on first moment for swell [s]"}, - /* 227 */ {"P2PS", "Mean wave period based on second moment for swell [s]"}, - /* 228 */ {"DWPS", "Wave spectral directional width for swell []"}, - /* 229 */ {"SWH", "Significant wave height [m]"}, - /* 230 */ {"MWD", "Mean wave direction [degrees]"}, - /* 231 */ {"PP1D", "Peak period of 1D spectra [s]"}, - /* 232 */ {"MWP", "Mean wave period [s]"}, - /* 233 */ {"CDWW", "Coefficient of drag with waves []"}, - /* 234 */ {"SHWW", "Significant height of wind waves [m]"}, - /* 235 */ {"MDWW", "Mean direction of wind waves [degrees]"}, - /* 236 */ {"MPWW", "Mean period of wind waves [s]"}, - /* 237 */ {"SHTS", "Significant height of total swell [m]"}, - /* 238 */ {"MDTS", "Mean direction of total swell [degrees]"}, - /* 239 */ {"MPTS", "Mean period of total swell [s]"}, - /* 240 */ {"SDHS", "Standard deviation wave height [m]"}, - /* 241 */ {"MU10", "Mean of 10 metre wind speed [m s**-1]"}, - /* 242 */ {"MDWI", "Mean wind direction [degrees]"}, - /* 243 */ {"SDU", "Standard deviation of 10 metre wind speed [m s**-1]"}, - /* 244 */ {"MSQS", "Mean square slope of waves [dimensionless]"}, - /* 245 */ {"WIND", "10 metre wind speed [m s**-1]"}, - /* 246 */ {"AWH", "Altimeter wave height [m]"}, - /* 247 */ {"ACWH", "Altimeter corrected wave height [m]"}, - /* 248 */ {"ARRC", "Altimeter range relative correction []"}, - /* 249 */ {"DWI", "10 metre wind direction [degrees]"}, - /* 250 */ {"2DSP", "2D wave spectra (multiple) [m**2 s radian**-1]"}, - /* 251 */ {"2DFD", "2D wave spectra (single) [m**2 s radian**-1]"}, - /* 252 */ {"WSK", "Wave spectral kurtosis []"}, - /* 253 */ {"BFI", "Benjamin-Feir index []"}, - /* 254 */ {"WSP", "Wave spectral peakedness [s**-1]"}, - /* 255 */ {"var255", "Indicates a missing value []"}, -}; - -const struct ParmTable parm_table_ecmwf_150[256] = { - /* 0 */ {"var0", "undefined"}, - /* 1 */ {"var1", "undefined"}, - /* 2 */ {"var2", "undefined"}, - /* 3 */ {"var3", "undefined"}, - /* 4 */ {"var4", "undefined"}, - /* 5 */ {"var5", "undefined"}, - /* 6 */ {"var6", "undefined"}, - /* 7 */ {"var7", "undefined"}, - /* 8 */ {"var8", "undefined"}, - /* 9 */ {"var9", "undefined"}, - /* 10 */ {"var10", "undefined"}, - /* 11 */ {"var11", "undefined"}, - /* 12 */ {"var12", "undefined"}, - /* 13 */ {"var13", "undefined"}, - /* 14 */ {"var14", "undefined"}, - /* 15 */ {"var15", "undefined"}, - /* 16 */ {"var16", "undefined"}, - /* 17 */ {"var17", "undefined"}, - /* 18 */ {"var18", "undefined"}, - /* 19 */ {"var19", "undefined"}, - /* 20 */ {"var20", "undefined"}, - /* 21 */ {"var21", "undefined"}, - /* 22 */ {"var22", "undefined"}, - /* 23 */ {"var23", "undefined"}, - /* 24 */ {"var24", "undefined"}, - /* 25 */ {"var25", "undefined"}, - /* 26 */ {"var26", "undefined"}, - /* 27 */ {"var27", "undefined"}, - /* 28 */ {"var28", "undefined"}, - /* 29 */ {"var29", "undefined"}, - /* 30 */ {"var30", "undefined"}, - /* 31 */ {"var31", "undefined"}, - /* 32 */ {"var32", "undefined"}, - /* 33 */ {"var33", "undefined"}, - /* 34 */ {"var34", "undefined"}, - /* 35 */ {"var35", "undefined"}, - /* 36 */ {"var36", "undefined"}, - /* 37 */ {"var37", "undefined"}, - /* 38 */ {"var38", "undefined"}, - /* 39 */ {"var39", "undefined"}, - /* 40 */ {"var40", "undefined"}, - /* 41 */ {"var41", "undefined"}, - /* 42 */ {"var42", "undefined"}, - /* 43 */ {"var43", "undefined"}, - /* 44 */ {"var44", "undefined"}, - /* 45 */ {"var45", "undefined"}, - /* 46 */ {"var46", "undefined"}, - /* 47 */ {"var47", "undefined"}, - /* 48 */ {"var48", "undefined"}, - /* 49 */ {"var49", "undefined"}, - /* 50 */ {"var50", "undefined"}, - /* 51 */ {"var51", "undefined"}, - /* 52 */ {"var52", "undefined"}, - /* 53 */ {"var53", "undefined"}, - /* 54 */ {"var54", "undefined"}, - /* 55 */ {"var55", "undefined"}, - /* 56 */ {"var56", "undefined"}, - /* 57 */ {"var57", "undefined"}, - /* 58 */ {"var58", "undefined"}, - /* 59 */ {"var59", "undefined"}, - /* 60 */ {"var60", "undefined"}, - /* 61 */ {"var61", "undefined"}, - /* 62 */ {"var62", "undefined"}, - /* 63 */ {"var63", "undefined"}, - /* 64 */ {"var64", "undefined"}, - /* 65 */ {"var65", "undefined"}, - /* 66 */ {"var66", "undefined"}, - /* 67 */ {"var67", "undefined"}, - /* 68 */ {"var68", "undefined"}, - /* 69 */ {"var69", "undefined"}, - /* 70 */ {"var70", "undefined"}, - /* 71 */ {"var71", "undefined"}, - /* 72 */ {"var72", "undefined"}, - /* 73 */ {"var73", "undefined"}, - /* 74 */ {"var74", "undefined"}, - /* 75 */ {"var75", "undefined"}, - /* 76 */ {"var76", "undefined"}, - /* 77 */ {"var77", "undefined"}, - /* 78 */ {"var78", "undefined"}, - /* 79 */ {"var79", "undefined"}, - /* 80 */ {"var80", "undefined"}, - /* 81 */ {"var81", "undefined"}, - /* 82 */ {"var82", "undefined"}, - /* 83 */ {"var83", "undefined"}, - /* 84 */ {"var84", "undefined"}, - /* 85 */ {"var85", "undefined"}, - /* 86 */ {"var86", "undefined"}, - /* 87 */ {"var87", "undefined"}, - /* 88 */ {"var88", "undefined"}, - /* 89 */ {"var89", "undefined"}, - /* 90 */ {"var90", "undefined"}, - /* 91 */ {"var91", "undefined"}, - /* 92 */ {"var92", "undefined"}, - /* 93 */ {"var93", "undefined"}, - /* 94 */ {"var94", "undefined"}, - /* 95 */ {"var95", "undefined"}, - /* 96 */ {"var96", "undefined"}, - /* 97 */ {"var97", "undefined"}, - /* 98 */ {"var98", "undefined"}, - /* 99 */ {"var99", "undefined"}, - /* 100 */ {"var100", "undefined"}, - /* 101 */ {"var101", "undefined"}, - /* 102 */ {"var102", "undefined"}, - /* 103 */ {"var103", "undefined"}, - /* 104 */ {"var104", "undefined"}, - /* 105 */ {"var105", "undefined"}, - /* 106 */ {"var106", "undefined"}, - /* 107 */ {"var107", "undefined"}, - /* 108 */ {"var108", "undefined"}, - /* 109 */ {"var109", "undefined"}, - /* 110 */ {"var110", "undefined"}, - /* 111 */ {"var111", "undefined"}, - /* 112 */ {"var112", "undefined"}, - /* 113 */ {"var113", "undefined"}, - /* 114 */ {"var114", "undefined"}, - /* 115 */ {"var115", "undefined"}, - /* 116 */ {"var116", "undefined"}, - /* 117 */ {"var117", "undefined"}, - /* 118 */ {"var118", "undefined"}, - /* 119 */ {"var119", "undefined"}, - /* 120 */ {"var120", "undefined"}, - /* 121 */ {"var121", "undefined"}, - /* 122 */ {"var122", "undefined"}, - /* 123 */ {"var123", "undefined"}, - /* 124 */ {"var124", "undefined"}, - /* 125 */ {"var125", "undefined"}, - /* 126 */ {"var126", "undefined"}, - /* 127 */ {"var127", "undefined"}, - /* 128 */ {"var128", "undefined"}, - /* 129 */ {"var129", "Ocean potential temperature [deg C]"}, - /* 130 */ {"var130", "Ocean salinity [psu]"}, - /* 131 */ {"var131", "Ocean potential density [kg m**-3 -1000]"}, - /* 132 */ {"var132", "undefined"}, - /* 133 */ {"var133", "Ocean U velocity [m s**-1]"}, - /* 134 */ {"var134", "Ocean V velocity [m s**-1]"}, - /* 135 */ {"var135", "Ocean W velocity [m s**-1]"}, - /* 136 */ {"var136", "undefined"}, - /* 137 */ {"var137", "Richardson number []"}, - /* 138 */ {"var138", "undefined"}, - /* 139 */ {"var139", "U*V product [m s**-2]"}, - /* 140 */ {"var140", "U*T product [m s**-1 deg C]"}, - /* 141 */ {"var141", "V*T product [m s**-1 deg C]"}, - /* 142 */ {"var142", "U*U product [m s**-2]"}, - /* 143 */ {"var143", "V*V product [m s**-2]"}, - /* 144 */ {"var144", "UV - U~V~ [m s**-2]"}, - /* 145 */ {"var145", "UT - U~T~ [m s**-1 deg C]"}, - /* 146 */ {"var146", "VT - V~T~ [m s**-1 deg C]"}, - /* 147 */ {"var147", "UU - U~U~ [m s**-2]"}, - /* 148 */ {"var148", "VV - V~V~ [m s**-2]"}, - /* 149 */ {"var149", "undefined"}, - /* 150 */ {"var150", "undefined"}, - /* 151 */ {"var151", "undefined"}, - /* 152 */ {"var152", "Sea level [m]"}, - /* 153 */ {"var153", "Barotropic stream function []"}, - /* 154 */ {"var154", "Mixed layer depth [m]"}, - /* 155 */ {"var155", "Depth [m]"}, - /* 156 */ {"var156", "undefined"}, - /* 157 */ {"var157", "undefined"}, - /* 158 */ {"var158", "undefined"}, - /* 159 */ {"var159", "undefined"}, - /* 160 */ {"var160", "undefined"}, - /* 161 */ {"var161", "undefined"}, - /* 162 */ {"var162", "undefined"}, - /* 163 */ {"var163", "undefined"}, - /* 164 */ {"var164", "undefined"}, - /* 165 */ {"var165", "undefined"}, - /* 166 */ {"var166", "undefined"}, - /* 167 */ {"var167", "undefined"}, - /* 168 */ {"var168", "U stress [Pa]"}, - /* 169 */ {"var169", "V stress [Pa]"}, - /* 170 */ {"var170", "Turbulent kinetic energy input []"}, - /* 171 */ {"var171", "Net surface heat flux []"}, - /* 172 */ {"var172", "Surface solar radiation []"}, - /* 173 */ {"var173", "P-E []"}, - /* 174 */ {"var174", "undefined"}, - /* 175 */ {"var175", "undefined"}, - /* 176 */ {"var176", "undefined"}, - /* 177 */ {"var177", "undefined"}, - /* 178 */ {"var178", "undefined"}, - /* 179 */ {"var179", "undefined"}, - /* 180 */ {"var180", "Diagnosed sea surface temperature error [deg C]"}, - /* 181 */ {"var181", "Heat flux correction [W m**-2]"}, - /* 182 */ {"var182", "Observed sea surface temperature [deg C]"}, - /* 183 */ {"var183", "Observed heat flux [W m**-2]"}, - /* 184 */ {"var184", "undefined"}, - /* 185 */ {"var185", "undefined"}, - /* 186 */ {"var186", "undefined"}, - /* 187 */ {"var187", "undefined"}, - /* 188 */ {"var188", "undefined"}, - /* 189 */ {"var189", "undefined"}, - /* 190 */ {"var190", "undefined"}, - /* 191 */ {"var191", "undefined"}, - /* 192 */ {"var192", "undefined"}, - /* 193 */ {"var193", "undefined"}, - /* 194 */ {"var194", "undefined"}, - /* 195 */ {"var195", "undefined"}, - /* 196 */ {"var196", "undefined"}, - /* 197 */ {"var197", "undefined"}, - /* 198 */ {"var198", "undefined"}, - /* 199 */ {"var199", "undefined"}, - /* 200 */ {"var200", "undefined"}, - /* 201 */ {"var201", "undefined"}, - /* 202 */ {"var202", "undefined"}, - /* 203 */ {"var203", "undefined"}, - /* 204 */ {"var204", "undefined"}, - /* 205 */ {"var205", "undefined"}, - /* 206 */ {"var206", "undefined"}, - /* 207 */ {"var207", "undefined"}, - /* 208 */ {"var208", "undefined"}, - /* 209 */ {"var209", "undefined"}, - /* 210 */ {"var210", "undefined"}, - /* 211 */ {"var211", "undefined"}, - /* 212 */ {"var212", "undefined"}, - /* 213 */ {"var213", "undefined"}, - /* 214 */ {"var214", "undefined"}, - /* 215 */ {"var215", "undefined"}, - /* 216 */ {"var216", "undefined"}, - /* 217 */ {"var217", "undefined"}, - /* 218 */ {"var218", "undefined"}, - /* 219 */ {"var219", "undefined"}, - /* 220 */ {"var220", "undefined"}, - /* 221 */ {"var221", "undefined"}, - /* 222 */ {"var222", "undefined"}, - /* 223 */ {"var223", "undefined"}, - /* 224 */ {"var224", "undefined"}, - /* 225 */ {"var225", "undefined"}, - /* 226 */ {"var226", "undefined"}, - /* 227 */ {"var227", "undefined"}, - /* 228 */ {"var228", "undefined"}, - /* 229 */ {"var229", "undefined"}, - /* 230 */ {"var230", "undefined"}, - /* 231 */ {"var231", "undefined"}, - /* 232 */ {"var232", "undefined"}, - /* 233 */ {"var233", "undefined"}, - /* 234 */ {"var234", "undefined"}, - /* 235 */ {"var235", "undefined"}, - /* 236 */ {"var236", "undefined"}, - /* 237 */ {"var237", "undefined"}, - /* 238 */ {"var238", "undefined"}, - /* 239 */ {"var239", "undefined"}, - /* 240 */ {"var240", "undefined"}, - /* 241 */ {"var241", "undefined"}, - /* 242 */ {"var242", "undefined"}, - /* 243 */ {"var243", "undefined"}, - /* 244 */ {"var244", "undefined"}, - /* 245 */ {"var245", "undefined"}, - /* 246 */ {"var246", "undefined"}, - /* 247 */ {"var247", "undefined"}, - /* 248 */ {"var248", "undefined"}, - /* 249 */ {"var249", "undefined"}, - /* 250 */ {"var250", "undefined"}, - /* 251 */ {"var251", "undefined"}, - /* 252 */ {"var252", "undefined"}, - /* 253 */ {"var253", "undefined"}, - /* 254 */ {"var254", "undefined"}, - /* 255 */ {"var255", "Indicates a missing value []"}, -}; - -const struct ParmTable parm_table_ecmwf_151[256] = { - /* 0 */ {"var0", "undefined"}, - /* 1 */ {"var1", "undefined"}, - /* 2 */ {"var2", "undefined"}, - /* 3 */ {"var3", "undefined"}, - /* 4 */ {"var4", "undefined"}, - /* 5 */ {"var5", "undefined"}, - /* 6 */ {"var6", "undefined"}, - /* 7 */ {"var7", "undefined"}, - /* 8 */ {"var8", "undefined"}, - /* 9 */ {"var9", "undefined"}, - /* 10 */ {"var10", "undefined"}, - /* 11 */ {"var11", "undefined"}, - /* 12 */ {"var12", "undefined"}, - /* 13 */ {"var13", "undefined"}, - /* 14 */ {"var14", "undefined"}, - /* 15 */ {"var15", "undefined"}, - /* 16 */ {"var16", "undefined"}, - /* 17 */ {"var17", "undefined"}, - /* 18 */ {"var18", "undefined"}, - /* 19 */ {"var19", "undefined"}, - /* 20 */ {"var20", "undefined"}, - /* 21 */ {"var21", "undefined"}, - /* 22 */ {"var22", "undefined"}, - /* 23 */ {"var23", "undefined"}, - /* 24 */ {"var24", "undefined"}, - /* 25 */ {"var25", "undefined"}, - /* 26 */ {"var26", "undefined"}, - /* 27 */ {"var27", "undefined"}, - /* 28 */ {"var28", "undefined"}, - /* 29 */ {"var29", "undefined"}, - /* 30 */ {"var30", "undefined"}, - /* 31 */ {"var31", "undefined"}, - /* 32 */ {"var32", "undefined"}, - /* 33 */ {"var33", "undefined"}, - /* 34 */ {"var34", "undefined"}, - /* 35 */ {"var35", "undefined"}, - /* 36 */ {"var36", "undefined"}, - /* 37 */ {"var37", "undefined"}, - /* 38 */ {"var38", "undefined"}, - /* 39 */ {"var39", "undefined"}, - /* 40 */ {"var40", "undefined"}, - /* 41 */ {"var41", "undefined"}, - /* 42 */ {"var42", "undefined"}, - /* 43 */ {"var43", "undefined"}, - /* 44 */ {"var44", "undefined"}, - /* 45 */ {"var45", "undefined"}, - /* 46 */ {"var46", "undefined"}, - /* 47 */ {"var47", "undefined"}, - /* 48 */ {"var48", "undefined"}, - /* 49 */ {"var49", "undefined"}, - /* 50 */ {"var50", "undefined"}, - /* 51 */ {"var51", "undefined"}, - /* 52 */ {"var52", "undefined"}, - /* 53 */ {"var53", "undefined"}, - /* 54 */ {"var54", "undefined"}, - /* 55 */ {"var55", "undefined"}, - /* 56 */ {"var56", "undefined"}, - /* 57 */ {"var57", "undefined"}, - /* 58 */ {"var58", "undefined"}, - /* 59 */ {"var59", "undefined"}, - /* 60 */ {"var60", "undefined"}, - /* 61 */ {"var61", "undefined"}, - /* 62 */ {"var62", "undefined"}, - /* 63 */ {"var63", "undefined"}, - /* 64 */ {"var64", "undefined"}, - /* 65 */ {"var65", "undefined"}, - /* 66 */ {"var66", "undefined"}, - /* 67 */ {"var67", "undefined"}, - /* 68 */ {"var68", "undefined"}, - /* 69 */ {"var69", "undefined"}, - /* 70 */ {"var70", "undefined"}, - /* 71 */ {"var71", "undefined"}, - /* 72 */ {"var72", "undefined"}, - /* 73 */ {"var73", "undefined"}, - /* 74 */ {"var74", "undefined"}, - /* 75 */ {"var75", "undefined"}, - /* 76 */ {"var76", "undefined"}, - /* 77 */ {"var77", "undefined"}, - /* 78 */ {"var78", "undefined"}, - /* 79 */ {"var79", "undefined"}, - /* 80 */ {"var80", "undefined"}, - /* 81 */ {"var81", "undefined"}, - /* 82 */ {"var82", "undefined"}, - /* 83 */ {"var83", "undefined"}, - /* 84 */ {"var84", "undefined"}, - /* 85 */ {"var85", "undefined"}, - /* 86 */ {"var86", "undefined"}, - /* 87 */ {"var87", "undefined"}, - /* 88 */ {"var88", "undefined"}, - /* 89 */ {"var89", "undefined"}, - /* 90 */ {"var90", "undefined"}, - /* 91 */ {"var91", "undefined"}, - /* 92 */ {"var92", "undefined"}, - /* 93 */ {"var93", "undefined"}, - /* 94 */ {"var94", "undefined"}, - /* 95 */ {"var95", "undefined"}, - /* 96 */ {"var96", "undefined"}, - /* 97 */ {"var97", "undefined"}, - /* 98 */ {"var98", "undefined"}, - /* 99 */ {"var99", "undefined"}, - /* 100 */ {"var100", "undefined"}, - /* 101 */ {"var101", "undefined"}, - /* 102 */ {"var102", "undefined"}, - /* 103 */ {"var103", "undefined"}, - /* 104 */ {"var104", "undefined"}, - /* 105 */ {"var105", "undefined"}, - /* 106 */ {"var106", "undefined"}, - /* 107 */ {"var107", "undefined"}, - /* 108 */ {"var108", "undefined"}, - /* 109 */ {"var109", "undefined"}, - /* 110 */ {"var110", "undefined"}, - /* 111 */ {"var111", "undefined"}, - /* 112 */ {"var112", "undefined"}, - /* 113 */ {"var113", "undefined"}, - /* 114 */ {"var114", "undefined"}, - /* 115 */ {"var115", "undefined"}, - /* 116 */ {"var116", "undefined"}, - /* 117 */ {"var117", "undefined"}, - /* 118 */ {"var118", "undefined"}, - /* 119 */ {"var119", "undefined"}, - /* 120 */ {"var120", "undefined"}, - /* 121 */ {"var121", "undefined"}, - /* 122 */ {"var122", "undefined"}, - /* 123 */ {"var123", "undefined"}, - /* 124 */ {"var124", "undefined"}, - /* 125 */ {"var125", "undefined"}, - /* 126 */ {"var126", "undefined"}, - /* 127 */ {"var127", "undefined"}, - /* 128 */ {"var128", "In situ Temperature [deg C]"}, - /* 129 */ {"OCPT", "Ocean potential temperature [deg C]"}, - /* 130 */ {"S", "Salinity [psu]"}, - /* 131 */ {"OCU", "Ocean current zonal component [m s**-1]"}, - /* 132 */ {"OCV", "Ocean current meridional component [m s**-1]"}, - /* 133 */ {"OCW", "Ocean current vertical component [m s**-1]"}, - /* 134 */ {"MST", "Modulus of strain rate tensor [s**-1]"}, - /* 135 */ {"VVS", "Vertical viscosity [m**2 s**-1]"}, - /* 136 */ {"VDF", "Vertical diffusivity [m**2 s**-1]"}, - /* 137 */ {"DEP", "Bottom level Depth [m]"}, - /* 138 */ {"STH", "Sigma-theta [kg m**-3]"}, - /* 139 */ {"RN", "Richardson number []"}, - /* 140 */ {"UV", "UV product [m**2 s**-2]"}, - /* 141 */ {"UT", "UT product [m s**-1 degC]"}, - /* 142 */ {"VT", "VT product [m s**-1 deg C]"}, - /* 143 */ {"UU", "UU product [m**2 s**-2]"}, - /* 144 */ {"VV", "VV product [m**2 s**-2]"}, - /* 145 */ {"SL", "Sea level [m]"}, - /* 146 */ {"SL_1", "Sea level previous timestep [m]"}, - /* 147 */ {"BSF", "Barotropic stream function [m**3 s**-1]"}, - /* 148 */ {"MLD", "Mixed layer depth [m]"}, - /* 149 */ {"BTP", "Bottom Pressure (equivalent height) [m]"}, - /* 150 */ {"SH", "Steric height [m]"}, - /* 151 */ {"CRL", "Curl of Wind Stress [N m**-3]"}, - /* 152 */ {"var152", "Divergence of wind stress [Nm**-3]"}, - /* 153 */ {"TAX", "U stress [N m**-2]"}, - /* 154 */ {"TAY", "V stress [N m**-2]"}, - /* 155 */ {"TKI", "Turbulent kinetic energy input [W m**-2]"}, - /* 156 */ {"NSF", "Net surface heat flux [W m**-2]"}, - /* 157 */ {"ASR", "Absorbed solar radiation [W m**-2]"}, - /* 158 */ {"PME", "Precipitation - evaporation [m s**-1]"}, - /* 159 */ {"SST", "Specified sea surface temperature [deg C]"}, - /* 160 */ {"SHF", "Specified surface heat flux [W m**-2]"}, - /* 161 */ {"DTE", "Diagnosed sea surface temperature error [deg C]"}, - /* 162 */ {"HFC", "Heat flux correction [W m**-2]"}, - /* 163 */ {"20D", "20 degrees isotherm depth [m]"}, - /* 164 */ {"TAV300", "Average potential temperature in the upper 300m [degrees C]"}, - /* 165 */ {"UBA1", "Vertically integrated zonal velocity (previous time step) [m**2 s**-1]"}, - /* 166 */ {"VBA1", "Vertically Integrated meridional velocity (previous time step) [m**2 s**-1]"}, - /* 167 */ {"ZTR", "Vertically integrated zonal volume transport [m**2 s**-1]"}, - /* 168 */ {"MTR", "Vertically integrated meridional volume transport [m**2 s**-1]"}, - /* 169 */ {"ZHT", "Vertically integrated zonal heat transport [J m**-1 s**-1]"}, - /* 170 */ {"MHT", "Vertically integrated meridional heat transport [J m**-1 s**-1]"}, - /* 171 */ {"UMAX", "U velocity maximum [m s**-1]"}, - /* 172 */ {"DUMAX", "Depth of the velocity maximum [m]"}, - /* 173 */ {"SMAX", "Salinity maximum [psu]"}, - /* 174 */ {"DSMAX", "Depth of salinity maximum [m]"}, - /* 175 */ {"SAV300", "Average salinity in the upper 300m [psu]"}, - /* 176 */ {"LDP", "Layer Thickness at scalar points [m]"}, - /* 177 */ {"LDU", "Layer Thickness at vector points [m]"}, - /* 178 */ {"PTI", "Potential temperature increment [deg C]"}, - /* 179 */ {"PTAE", "Potential temperature analysis error [deg C]"}, - /* 180 */ {"BPT", "Background potential temperature [deg C]"}, - /* 181 */ {"APT", "Analysed potential temperature [deg C]"}, - /* 182 */ {"PTBE", "Potential temperature background error [deg C]"}, - /* 183 */ {"AS", "Analysed salinity [psu]"}, - /* 184 */ {"SALI", "Salinity increment [psu]"}, - /* 185 */ {"EBT", "Estimated Bias in Temperature [deg C]"}, - /* 186 */ {"EBS", "Estimated Bias in Salinity [psu]"}, - /* 187 */ {"UVI", "Zonal Velocity increment (from balance operator) [m/s per time step]"}, - /* 188 */ {"VVI", "Meridional Velocity increment (from balance operator) []"}, - /* 189 */ {"var189", "undefined"}, - /* 190 */ {"SUBI", "Salinity increment (from salinity data) [psu per time step]"}, - /* 191 */ {"SALE", "Salinity analysis error [psu]"}, - /* 192 */ {"BSAL", "Background Salinity [psu]"}, - /* 193 */ {"var193", "Reserved []"}, - /* 194 */ {"SALBE", "Salinity background error [psu]"}, - /* 195 */ {"var195", "undefined"}, - /* 196 */ {"var196", "undefined"}, - /* 197 */ {"var197", "undefined"}, - /* 198 */ {"var198", "undefined"}, - /* 199 */ {"EBTA", "Estimated temperature bias from assimilation [deg C]"}, - /* 200 */ {"EBSA", "Estimated salinity bias from assimilation [psu]"}, - /* 201 */ {"LTI", "Temperature increment from relaxation term [deg C per time step]"}, - /* 202 */ {"LSI", "Salinity increment from relaxation term []"}, - /* 203 */ {"BZPGA", "Bias in the zonal pressure gradient (applied) [Pa**m-1]"}, - /* 204 */ {"BMPGA", "Bias in the meridional pressure gradient (applied) [Pa**m-1]"}, - /* 205 */ {"EBTL", "Estimated temperature bias from relaxation [deg C]"}, - /* 206 */ {"EBSL", "Estimated salinity bias from relaxation [psu]"}, - /* 207 */ {"FGBT", "First guess bias in temperature [deg C]"}, - /* 208 */ {"FGBS", "First guess bias in salinity [psu]"}, - /* 209 */ {"BPA", "Applied bias in pressure [Pa]"}, - /* 210 */ {"FGBP", "FG bias in pressure [Pa]"}, - /* 211 */ {"PTA", "Bias in temperature(applied) [deg C]"}, - /* 212 */ {"PSA", "Bias in salinity (applied) [psu]"}, - /* 213 */ {"var213", "undefined"}, - /* 214 */ {"var214", "undefined"}, - /* 215 */ {"var215", "undefined"}, - /* 216 */ {"var216", "undefined"}, - /* 217 */ {"var217", "undefined"}, - /* 218 */ {"var218", "undefined"}, - /* 219 */ {"var219", "undefined"}, - /* 220 */ {"var220", "undefined"}, - /* 221 */ {"var221", "undefined"}, - /* 222 */ {"var222", "undefined"}, - /* 223 */ {"var223", "undefined"}, - /* 224 */ {"var224", "undefined"}, - /* 225 */ {"var225", "undefined"}, - /* 226 */ {"var226", "undefined"}, - /* 227 */ {"var227", "undefined"}, - /* 228 */ {"var228", "undefined"}, - /* 229 */ {"var229", "undefined"}, - /* 230 */ {"var230", "undefined"}, - /* 231 */ {"var231", "undefined"}, - /* 232 */ {"var232", "undefined"}, - /* 233 */ {"var233", "undefined"}, - /* 234 */ {"var234", "undefined"}, - /* 235 */ {"var235", "undefined"}, - /* 236 */ {"var236", "undefined"}, - /* 237 */ {"var237", "undefined"}, - /* 238 */ {"var238", "undefined"}, - /* 239 */ {"var239", "undefined"}, - /* 240 */ {"var240", "undefined"}, - /* 241 */ {"var241", "undefined"}, - /* 242 */ {"var242", "undefined"}, - /* 243 */ {"var243", "undefined"}, - /* 244 */ {"var244", "undefined"}, - /* 245 */ {"var245", "undefined"}, - /* 246 */ {"var246", "undefined"}, - /* 247 */ {"var247", "undefined"}, - /* 248 */ {"var248", "undefined"}, - /* 249 */ {"var249", "undefined"}, - /* 250 */ {"var250", "undefined"}, - /* 251 */ {"var251", "undefined"}, - /* 252 */ {"var252", "undefined"}, - /* 253 */ {"var253", "undefined"}, - /* 254 */ {"var254", "undefined"}, - /* 255 */ {"var255", " []"}, -}; - -const struct ParmTable parm_table_ecmwf_160[256] = { - /* 0 */ {"var0", "undefined"}, - /* 1 */ {"var1", "undefined"}, - /* 2 */ {"var2", "undefined"}, - /* 3 */ {"var3", "undefined"}, - /* 4 */ {"var4", "undefined"}, - /* 5 */ {"var5", "undefined"}, - /* 6 */ {"var6", "undefined"}, - /* 7 */ {"var7", "undefined"}, - /* 8 */ {"var8", "undefined"}, - /* 9 */ {"var9", "undefined"}, - /* 10 */ {"var10", "undefined"}, - /* 11 */ {"var11", "undefined"}, - /* 12 */ {"var12", "undefined"}, - /* 13 */ {"var13", "undefined"}, - /* 14 */ {"var14", "undefined"}, - /* 15 */ {"var15", "undefined"}, - /* 16 */ {"var16", "undefined"}, - /* 17 */ {"var17", "undefined"}, - /* 18 */ {"var18", "undefined"}, - /* 19 */ {"var19", "undefined"}, - /* 20 */ {"var20", "undefined"}, - /* 21 */ {"var21", "undefined"}, - /* 22 */ {"var22", "undefined"}, - /* 23 */ {"var23", "undefined"}, - /* 24 */ {"var24", "undefined"}, - /* 25 */ {"var25", "undefined"}, - /* 26 */ {"var26", "undefined"}, - /* 27 */ {"var27", "undefined"}, - /* 28 */ {"var28", "undefined"}, - /* 29 */ {"var29", "undefined"}, - /* 30 */ {"var30", "undefined"}, - /* 31 */ {"var31", "undefined"}, - /* 32 */ {"var32", "undefined"}, - /* 33 */ {"var33", "undefined"}, - /* 34 */ {"var34", "undefined"}, - /* 35 */ {"var35", "undefined"}, - /* 36 */ {"var36", "undefined"}, - /* 37 */ {"var37", "undefined"}, - /* 38 */ {"var38", "undefined"}, - /* 39 */ {"var39", "undefined"}, - /* 40 */ {"var40", "undefined"}, - /* 41 */ {"var41", "undefined"}, - /* 42 */ {"var42", "undefined"}, - /* 43 */ {"var43", "undefined"}, - /* 44 */ {"var44", "undefined"}, - /* 45 */ {"var45", "undefined"}, - /* 46 */ {"var46", "undefined"}, - /* 47 */ {"var47", "undefined"}, - /* 48 */ {"var48", "undefined"}, - /* 49 */ {"10FG", "10 metre wind gust during averaging time [m s**-1]"}, - /* 50 */ {"var50", "undefined"}, - /* 51 */ {"var51", "undefined"}, - /* 52 */ {"var52", "undefined"}, - /* 53 */ {"var53", "undefined"}, - /* 54 */ {"var54", "undefined"}, - /* 55 */ {"var55", "undefined"}, - /* 56 */ {"var56", "undefined"}, - /* 57 */ {"var57", "undefined"}, - /* 58 */ {"var58", "undefined"}, - /* 59 */ {"var59", "undefined"}, - /* 60 */ {"var60", "undefined"}, - /* 61 */ {"var61", "undefined"}, - /* 62 */ {"var62", "undefined"}, - /* 63 */ {"var63", "undefined"}, - /* 64 */ {"var64", "undefined"}, - /* 65 */ {"var65", "undefined"}, - /* 66 */ {"var66", "undefined"}, - /* 67 */ {"var67", "undefined"}, - /* 68 */ {"var68", "undefined"}, - /* 69 */ {"var69", "undefined"}, - /* 70 */ {"var70", "undefined"}, - /* 71 */ {"var71", "undefined"}, - /* 72 */ {"var72", "undefined"}, - /* 73 */ {"var73", "undefined"}, - /* 74 */ {"var74", "undefined"}, - /* 75 */ {"var75", "undefined"}, - /* 76 */ {"var76", "undefined"}, - /* 77 */ {"var77", "undefined"}, - /* 78 */ {"var78", "undefined"}, - /* 79 */ {"var79", "undefined"}, - /* 80 */ {"var80", "undefined"}, - /* 81 */ {"var81", "undefined"}, - /* 82 */ {"var82", "undefined"}, - /* 83 */ {"var83", "undefined"}, - /* 84 */ {"var84", "undefined"}, - /* 85 */ {"var85", "undefined"}, - /* 86 */ {"var86", "undefined"}, - /* 87 */ {"var87", "undefined"}, - /* 88 */ {"var88", "undefined"}, - /* 89 */ {"var89", "undefined"}, - /* 90 */ {"var90", "undefined"}, - /* 91 */ {"var91", "undefined"}, - /* 92 */ {"var92", "undefined"}, - /* 93 */ {"var93", "undefined"}, - /* 94 */ {"var94", "undefined"}, - /* 95 */ {"var95", "undefined"}, - /* 96 */ {"var96", "undefined"}, - /* 97 */ {"var97", "undefined"}, - /* 98 */ {"var98", "undefined"}, - /* 99 */ {"var99", "undefined"}, - /* 100 */ {"var100", "undefined"}, - /* 101 */ {"var101", "undefined"}, - /* 102 */ {"var102", "undefined"}, - /* 103 */ {"var103", "undefined"}, - /* 104 */ {"var104", "undefined"}, - /* 105 */ {"var105", "undefined"}, - /* 106 */ {"var106", "undefined"}, - /* 107 */ {"var107", "undefined"}, - /* 108 */ {"var108", "undefined"}, - /* 109 */ {"var109", "undefined"}, - /* 110 */ {"var110", "undefined"}, - /* 111 */ {"var111", "undefined"}, - /* 112 */ {"var112", "undefined"}, - /* 113 */ {"var113", "undefined"}, - /* 114 */ {"var114", "undefined"}, - /* 115 */ {"var115", "undefined"}, - /* 116 */ {"var116", "undefined"}, - /* 117 */ {"var117", "undefined"}, - /* 118 */ {"var118", "undefined"}, - /* 119 */ {"var119", "undefined"}, - /* 120 */ {"var120", "undefined"}, - /* 121 */ {"var121", "undefined"}, - /* 122 */ {"var122", "undefined"}, - /* 123 */ {"var123", "undefined"}, - /* 124 */ {"var124", "undefined"}, - /* 125 */ {"var125", "undefined"}, - /* 126 */ {"var126", "undefined"}, - /* 127 */ {"AT", "Atmospheric tide []"}, - /* 128 */ {"BV", "Budget values []"}, - /* 129 */ {"Z", "Geopotential [m**2 s**-2]"}, - /* 130 */ {"T", "Temperature [K]"}, - /* 131 */ {"U", "U velocity [m s**-1]"}, - /* 132 */ {"V", "V velocity [m s**-1]"}, - /* 133 */ {"Q", "Specific humidity [kg kg**-1]"}, - /* 134 */ {"SP", "Surface pressure [Pa]"}, - /* 135 */ {"W", "Vertical velocity [Pa s**-1]"}, - /* 136 */ {"TCW", "Total column water [kg m**-2]"}, - /* 137 */ {"PWC", "Precipitable water content [kg m**-2]"}, - /* 138 */ {"VO", "Vorticity (relative) [s**-1]"}, - /* 139 */ {"STL1", "Soil temperature level 1 [K]"}, - /* 140 */ {"SWL1", "Soil wetness level 1 [m]"}, - /* 141 */ {"SD", "Snow depth [m of water]"}, - /* 142 */ {"LSP", "Large-scale precipitation [kg m**-2 s**-1]"}, - /* 143 */ {"CP", "Convective precipitation [kg m**-2 s**-1]"}, - /* 144 */ {"SF", "Snowfall [kg m**-2 s**-1]"}, - /* 145 */ {"BLD", "Boundary layer dissipation [W m**-2]"}, - /* 146 */ {"SSHF", "Surface sensible heat flux [W m**-2]"}, - /* 147 */ {"SLHF", "Surface latent heat flux [W m**-2]"}, - /* 148 */ {"var148", "undefined"}, - /* 149 */ {"var149", "undefined"}, - /* 150 */ {"var150", "undefined"}, - /* 151 */ {"MSL", "Mean sea level pressure [Pa]"}, - /* 152 */ {"LNSP", "Logarithm of surface pressure []"}, - /* 153 */ {"var153", "undefined"}, - /* 154 */ {"var154", "undefined"}, - /* 155 */ {"D", "Divergence [s**-1]"}, - /* 156 */ {"GH", "Height [m]"}, - /* 157 */ {"R", "Relative humidity [(0 - 1)]"}, - /* 158 */ {"TSP", "Tendency of surface pressure [Pa s**-1]"}, - /* 159 */ {"var159", "undefined"}, - /* 160 */ {"var160", "undefined"}, - /* 161 */ {"var161", "undefined"}, - /* 162 */ {"var162", "undefined"}, - /* 163 */ {"var163", "undefined"}, - /* 164 */ {"TCC", "Total cloud cover [(0 - 1)]"}, - /* 165 */ {"10U", "10 metre U wind component [m s**-1]"}, - /* 166 */ {"10V", "10 metre V wind component [m s**-1]"}, - /* 167 */ {"2T", "2 metre temperature [K]"}, - /* 168 */ {"2D", "2 metre dewpoint temperature [K]"}, - /* 169 */ {"var169", "undefined"}, - /* 170 */ {"STL2", "Soil temperature level 2 [K]"}, - /* 171 */ {"SWL2", "Soil wetness level 2 [m]"}, - /* 172 */ {"LSM", "Land-sea mask [(0 - 1)]"}, - /* 173 */ {"SR", "Surface roughness [m]"}, - /* 174 */ {"AL", "Albedo [(0 - 1)]"}, - /* 175 */ {"var175", "undefined"}, - /* 176 */ {"SSR", "Surface solar radiation [W m**-2]"}, - /* 177 */ {"STR", "Surface thermal radiation [W m**-2]"}, - /* 178 */ {"TSR", "Top solar radiation [W m**-2]"}, - /* 179 */ {"TTR", "Top thermal radiation [W m**-2]"}, - /* 180 */ {"EWSS", "East-West surface stress [N m**-2 s**-1]"}, - /* 181 */ {"NSSS", "North-South surface stress [N m**-2 s**-1]"}, - /* 182 */ {"E", "Evaporation [kg m**-2 s**-1]"}, - /* 183 */ {"STL3", "Soil temperature level 3 [K]"}, - /* 184 */ {"SWL3", "Soil wetness level 3 [m]"}, - /* 185 */ {"CCC", "Convective cloud cover [(0 - 1)]"}, - /* 186 */ {"LCC", "Low cloud cover [(0 - 1)]"}, - /* 187 */ {"MCC", "Medium cloud cover [(0 - 1)]"}, - /* 188 */ {"HCC", "High cloud cover [(0 - 1)]"}, - /* 189 */ {"var189", "undefined"}, - /* 190 */ {"EWOV", "East-West component of sub-gridscale orographic variance [m**2]"}, - /* 191 */ {"NSOV", "North-South component of sub-gridscale orographic variance [m**2]"}, - /* 192 */ {"NWOV", "North-West/South-East component of sub-gridscale orographic variance [m**2]"}, - /* 193 */ {"NEOV", "North-East/South-West component of sub-gridscale orographic variance [m**2]"}, - /* 194 */ {"var194", "undefined"}, - /* 195 */ {"LGWS", "Latitudinal component of gravity wave stress [N m**-2 s]"}, - /* 196 */ {"MGWS", "Meridional component of gravity wave stress [N m**-2 s]"}, - /* 197 */ {"GWD", "Gravity wave dissipation [W m**-2 s]"}, - /* 198 */ {"SRC", "Skin reservoir content [m of water]"}, - /* 199 */ {"VEG", "Percentage of vegetation [%]"}, - /* 200 */ {"VSO", "Variance of sub-gridscale orography [m**2]"}, - /* 201 */ {"MX2T", "Maximum temperature at 2 metres during averaging time [K]"}, - /* 202 */ {"MN2T", "Minimium temperature at 2 metres during averaging time [K]"}, - /* 203 */ {"var203", "undefined"}, - /* 204 */ {"PAW", "Precipitation analysis weights []"}, - /* 205 */ {"RO", "Runoff [kg m**-2 s**-1]"}, - /* 206 */ {"ZZ", "Standard deviation of geopotential [m**2 s**-2]"}, - /* 207 */ {"TZ", "Covariance of temperature and geopotential [K m**2 s**-2]"}, - /* 208 */ {"TT", "Standard deviation of temperature [K]"}, - /* 209 */ {"QZ", "Covariance of specific humidity and geopotential [m**2 s**-2]"}, - /* 210 */ {"QT", "Covariance of specific humidity and temperature [K]"}, - /* 211 */ {"QQ", "Standard deviation of specific humidity [(0 - 1)]"}, - /* 212 */ {"UZ", "Covariance of U component and geopotential [m**3 s**-3]"}, - /* 213 */ {"UT", "Covariance of U component and temperature [K m s**-1]"}, - /* 214 */ {"UQ", "Covariance of U component and specific humidity [m s**-1]"}, - /* 215 */ {"UU", "Standard deviation of U velocity [m s**-1]"}, - /* 216 */ {"VZ", "Covariance of V component and geopotential [m**3 s**-3]"}, - /* 217 */ {"VT", "Covariance of V component and temperature [K m s**-1]"}, - /* 218 */ {"VQ", "Covariance of V component and specific humidity [m s**-1]"}, - /* 219 */ {"VU", "Covariance of V component and U component [m**2 s**-2]"}, - /* 220 */ {"VV", "Standard deviation of V component [m s**-1]"}, - /* 221 */ {"WZ", "Covariance of W component and geopotential [Pa m**2 s**-3]"}, - /* 222 */ {"WT", "Covariance of W component and temperature [K Pa s**-1]"}, - /* 223 */ {"WQ", "Covariance of W component and specific humidity [Pa s**-1]"}, - /* 224 */ {"WU", "Covariance of W component and U component [Pa m s**-2]"}, - /* 225 */ {"WV", "Covariance of W component and V component [Pa m s**-2]"}, - /* 226 */ {"WW", "Standard deviation of vertical velocity [Pa s**-1]"}, - /* 227 */ {"var227", "undefined"}, - /* 228 */ {"TP", "Total precipitation [m]"}, - /* 229 */ {"IEWS", "Instantaneous X surface stress [N m**-2]"}, - /* 230 */ {"INSS", "Instantaneous Y surface stress [N m**-2]"}, - /* 231 */ {"ISHF", "Instantaneous surface heat flux [W m**-2]"}, - /* 232 */ {"IE", "Instantaneous moisture flux [kg m**-2 s**-1]"}, - /* 233 */ {"ASQ", "Apparent surface humidity [kg kg**-1]"}, - /* 234 */ {"LSRH", "Logarithm of surface roughness length for heat []"}, - /* 235 */ {"SKT", "Skin temperature [K]"}, - /* 236 */ {"STL4", "Soil temperature level 4 [K]"}, - /* 237 */ {"SWL4", "Soil wetness level 4 [m]"}, - /* 238 */ {"TSN", "Temperature of snow layer [K]"}, - /* 239 */ {"CSF", "Convective snowfall [kg m**-2 s**-1]"}, - /* 240 */ {"LSF", "Large-scale snowfall [kg m**-2 s**-1]"}, - /* 241 */ {"CLWCER", "Cloud liquid water content [kg kg**-1]"}, - /* 242 */ {"CC", "Cloud cover [(0 - 1)]"}, - /* 243 */ {"FAL", "Forecast albedo []"}, - /* 244 */ {"FSR", "Forecast surface roughness [m]"}, - /* 245 */ {"FLSR", "Forecast logarithm of surface roughness for heat []"}, - /* 246 */ {"10WS", "10 metre wind speed [m s**-1]"}, - /* 247 */ {"MOFL", "Momentum flux [N m**-2]"}, - /* 248 */ {"var248", "undefined"}, - /* 249 */ {"var249", "Gravity wave dissipation flux [W m**-2]"}, - /* 250 */ {"var250", "undefined"}, - /* 251 */ {"var251", "undefined"}, - /* 252 */ {"var252", "undefined"}, - /* 253 */ {"var253", "undefined"}, - /* 254 */ {"HSD", "Heaviside beta function [(0 - 1)]"}, - /* 255 */ {"var255", "Indicates a missing value []"}, -}; - -const struct ParmTable parm_table_ecmwf_162[256] = { - /* 0 */ {"var0", "undefined"}, - /* 1 */ {"var1", "undefined"}, - /* 2 */ {"var2", "undefined"}, - /* 3 */ {"var3", "undefined"}, - /* 4 */ {"var4", "undefined"}, - /* 5 */ {"var5", "undefined"}, - /* 6 */ {"var6", "undefined"}, - /* 7 */ {"var7", "undefined"}, - /* 8 */ {"var8", "undefined"}, - /* 9 */ {"var9", "undefined"}, - /* 10 */ {"var10", "undefined"}, - /* 11 */ {"var11", "undefined"}, - /* 12 */ {"var12", "undefined"}, - /* 13 */ {"var13", "undefined"}, - /* 14 */ {"var14", "undefined"}, - /* 15 */ {"var15", "undefined"}, - /* 16 */ {"var16", "undefined"}, - /* 17 */ {"var17", "undefined"}, - /* 18 */ {"var18", "undefined"}, - /* 19 */ {"var19", "undefined"}, - /* 20 */ {"var20", "undefined"}, - /* 21 */ {"var21", "undefined"}, - /* 22 */ {"var22", "undefined"}, - /* 23 */ {"var23", "undefined"}, - /* 24 */ {"var24", "undefined"}, - /* 25 */ {"var25", "undefined"}, - /* 26 */ {"var26", "undefined"}, - /* 27 */ {"var27", "undefined"}, - /* 28 */ {"var28", "undefined"}, - /* 29 */ {"var29", "undefined"}, - /* 30 */ {"var30", "undefined"}, - /* 31 */ {"var31", "undefined"}, - /* 32 */ {"var32", "undefined"}, - /* 33 */ {"var33", "undefined"}, - /* 34 */ {"var34", "undefined"}, - /* 35 */ {"var35", "undefined"}, - /* 36 */ {"var36", "undefined"}, - /* 37 */ {"var37", "undefined"}, - /* 38 */ {"var38", "undefined"}, - /* 39 */ {"var39", "undefined"}, - /* 40 */ {"var40", "undefined"}, - /* 41 */ {"var41", "undefined"}, - /* 42 */ {"var42", "undefined"}, - /* 43 */ {"var43", "undefined"}, - /* 44 */ {"var44", "undefined"}, - /* 45 */ {"var45", "undefined"}, - /* 46 */ {"var46", "undefined"}, - /* 47 */ {"var47", "undefined"}, - /* 48 */ {"var48", "undefined"}, - /* 49 */ {"var49", "undefined"}, - /* 50 */ {"var50", "undefined"}, - /* 51 */ {"var51", "Surface geopotential [m**2 s**-2]"}, - /* 52 */ {"var52", "Surface pressure [Pa]"}, - /* 53 */ {"var53", "Vertical integral of mass of atmosphere [kg m**-2]"}, - /* 54 */ {"var54", "Vertical integral of temperature [K kg m**-2]"}, - /* 55 */ {"var55", "Vertical integral of total column water vapour [kg m**-2]"}, - /* 56 */ {"var56", "Vertical integral of total column liquid cloud water [kg m**-2]"}, - /* 57 */ {"var57", "Vertical integral of total column frozen cloud water [kg m**-2]"}, - /* 58 */ {"var58", "Vertical integral of total column ozone [kg m**-2]"}, - /* 59 */ {"var59", "Vertical integral of kinetic energy [J m**-2]"}, - /* 60 */ {"var60", "Vertical integral of thermal energy [J m**-2]"}, - /* 61 */ {"var61", "Vertical integral of dry static energy [J m**-2]"}, - /* 62 */ {"var62", "Vertical integral of moist static energy [J m**-2]"}, - /* 63 */ {"var63", "Vertical integral of total energy [J m**-2]"}, - /* 64 */ {"var64", "Vertical integral of energy conversion [W m**-2]"}, - /* 65 */ {"var65", "Vertical integral of eastward mass flux [kg m**-1 s**-1]"}, - /* 66 */ {"var66", "Vertical integral of northward mass flux [kg m**-1 s**-1]"}, - /* 67 */ {"var67", "Vertical integral of eastward kinetic energy flux [W m**-2]"}, - /* 68 */ {"var68", "Vertical integral of northward kinetic energy flux [W m**-2]"}, - /* 69 */ {"var69", "Vertical integral of eastward heat flux [W m**-2]"}, - /* 70 */ {"var70", "Vertical integral of northward heat flux [W m**-2]"}, - /* 71 */ {"var71", "Vertical integral of eastward water vapour flux [kg m**-1 s**-1]"}, - /* 72 */ {"var72", "Vertical integral of northward water vapour flux [kg m**-1 s**-1]"}, - /* 73 */ {"var73", "Vertical integral of eastward geopotential flux [W m**-2]"}, - /* 74 */ {"var74", "Vertical integral of northward geopotential flux [W m**-2]"}, - /* 75 */ {"var75", "Vertical integral of eastward total energy flux [W m**-2]"}, - /* 76 */ {"var76", "Vertical integral of northward total energy flux [W m**-2]"}, - /* 77 */ {"var77", "Vertical integral of eastward ozone flux [kg m**-1 s**-1]"}, - /* 78 */ {"var78", "Vertical integral of northward ozone flux [kg m**-1 s**-1]"}, - /* 79 */ {"var79", "undefined"}, - /* 80 */ {"var80", "undefined"}, - /* 81 */ {"var81", "Vertical integral of divergence of mass flux [kg m**-2 s**-1]"}, - /* 82 */ {"var82", "Vertical integral of divergence of kinetic energy flux [W m**-2]"}, - /* 83 */ {"var83", "Vertical integral of divergence of thermal energy flux [W m**-2]"}, - /* 84 */ {"var84", "Vertical integral of divergence of moisture flux [kg m**-2 s**-1]"}, - /* 85 */ {"var85", "Vertical integral of divergence of geopotential flux [W m**-2]"}, - /* 86 */ {"var86", "Vertical integral of divergence of total energy flux [W m**-2]"}, - /* 87 */ {"var87", "Vertical integral of divergence of ozone flux [kg m**-2 s**-1]"}, - /* 88 */ {"var88", "undefined"}, - /* 89 */ {"var89", "undefined"}, - /* 90 */ {"var90", "undefined"}, - /* 91 */ {"var91", "undefined"}, - /* 92 */ {"var92", "undefined"}, - /* 93 */ {"var93", "undefined"}, - /* 94 */ {"var94", "undefined"}, - /* 95 */ {"var95", "undefined"}, - /* 96 */ {"var96", "undefined"}, - /* 97 */ {"var97", "undefined"}, - /* 98 */ {"var98", "undefined"}, - /* 99 */ {"var99", "undefined"}, - /* 100 */ {"var100", "Tendency of short wave radiation [K]"}, - /* 101 */ {"var101", "Tendency of long wave radiation [K]"}, - /* 102 */ {"var102", "Tendency of clear sky short wave radiation [K]"}, - /* 103 */ {"var103", "Tendency of clear sky long wave radiation [K]"}, - /* 104 */ {"var104", "Updraught mass flux [kg m**-2]"}, - /* 105 */ {"var105", "Downdraught mass flux [kg m**-2]"}, - /* 106 */ {"var106", "Updraught detrainment rate [kg m**-3]"}, - /* 107 */ {"var107", "Downdraught detrainment rate [kg m**-3]"}, - /* 108 */ {"var108", "Total precipitation flux [kg m**-2]"}, - /* 109 */ {"var109", "Turbulent diffusion coefficient for heat [m**2]"}, - /* 110 */ {"var110", "Tendency of temperature due to physics [K]"}, - /* 111 */ {"var111", "Tendency of specific humidity due to physics [kg kg**-1]"}, - /* 112 */ {"var112", "Tendency of u component due to physics [m s**-1]"}, - /* 113 */ {"var113", "Tendency of v component due to physics [m s**-1]"}, - /* 114 */ {"var114", "undefined"}, - /* 115 */ {"var115", "undefined"}, - /* 116 */ {"var116", "undefined"}, - /* 117 */ {"var117", "undefined"}, - /* 118 */ {"var118", "undefined"}, - /* 119 */ {"var119", "undefined"}, - /* 120 */ {"var120", "undefined"}, - /* 121 */ {"var121", "undefined"}, - /* 122 */ {"var122", "undefined"}, - /* 123 */ {"var123", "undefined"}, - /* 124 */ {"var124", "undefined"}, - /* 125 */ {"var125", "undefined"}, - /* 126 */ {"var126", "undefined"}, - /* 127 */ {"var127", "undefined"}, - /* 128 */ {"var128", "undefined"}, - /* 129 */ {"var129", "undefined"}, - /* 130 */ {"var130", "undefined"}, - /* 131 */ {"var131", "undefined"}, - /* 132 */ {"var132", "undefined"}, - /* 133 */ {"var133", "undefined"}, - /* 134 */ {"var134", "undefined"}, - /* 135 */ {"var135", "undefined"}, - /* 136 */ {"var136", "undefined"}, - /* 137 */ {"var137", "undefined"}, - /* 138 */ {"var138", "undefined"}, - /* 139 */ {"var139", "undefined"}, - /* 140 */ {"var140", "undefined"}, - /* 141 */ {"var141", "undefined"}, - /* 142 */ {"var142", "undefined"}, - /* 143 */ {"var143", "undefined"}, - /* 144 */ {"var144", "undefined"}, - /* 145 */ {"var145", "undefined"}, - /* 146 */ {"var146", "undefined"}, - /* 147 */ {"var147", "undefined"}, - /* 148 */ {"var148", "undefined"}, - /* 149 */ {"var149", "undefined"}, - /* 150 */ {"var150", "undefined"}, - /* 151 */ {"var151", "undefined"}, - /* 152 */ {"var152", "undefined"}, - /* 153 */ {"var153", "undefined"}, - /* 154 */ {"var154", "undefined"}, - /* 155 */ {"var155", "undefined"}, - /* 156 */ {"var156", "undefined"}, - /* 157 */ {"var157", "undefined"}, - /* 158 */ {"var158", "undefined"}, - /* 159 */ {"var159", "undefined"}, - /* 160 */ {"var160", "undefined"}, - /* 161 */ {"var161", "undefined"}, - /* 162 */ {"var162", "undefined"}, - /* 163 */ {"var163", "undefined"}, - /* 164 */ {"var164", "undefined"}, - /* 165 */ {"var165", "undefined"}, - /* 166 */ {"var166", "undefined"}, - /* 167 */ {"var167", "undefined"}, - /* 168 */ {"var168", "undefined"}, - /* 169 */ {"var169", "undefined"}, - /* 170 */ {"var170", "undefined"}, - /* 171 */ {"var171", "undefined"}, - /* 172 */ {"var172", "undefined"}, - /* 173 */ {"var173", "undefined"}, - /* 174 */ {"var174", "undefined"}, - /* 175 */ {"var175", "undefined"}, - /* 176 */ {"var176", "undefined"}, - /* 177 */ {"var177", "undefined"}, - /* 178 */ {"var178", "undefined"}, - /* 179 */ {"var179", "undefined"}, - /* 180 */ {"var180", "undefined"}, - /* 181 */ {"var181", "undefined"}, - /* 182 */ {"var182", "undefined"}, - /* 183 */ {"var183", "undefined"}, - /* 184 */ {"var184", "undefined"}, - /* 185 */ {"var185", "undefined"}, - /* 186 */ {"var186", "undefined"}, - /* 187 */ {"var187", "undefined"}, - /* 188 */ {"var188", "undefined"}, - /* 189 */ {"var189", "undefined"}, - /* 190 */ {"var190", "undefined"}, - /* 191 */ {"var191", "undefined"}, - /* 192 */ {"var192", "undefined"}, - /* 193 */ {"var193", "undefined"}, - /* 194 */ {"var194", "undefined"}, - /* 195 */ {"var195", "undefined"}, - /* 196 */ {"var196", "undefined"}, - /* 197 */ {"var197", "undefined"}, - /* 198 */ {"var198", "undefined"}, - /* 199 */ {"var199", "undefined"}, - /* 200 */ {"var200", "undefined"}, - /* 201 */ {"var201", "undefined"}, - /* 202 */ {"var202", "undefined"}, - /* 203 */ {"var203", "undefined"}, - /* 204 */ {"var204", "undefined"}, - /* 205 */ {"var205", "undefined"}, - /* 206 */ {"var206", "Variance of geopotential [m**4 s**-4]"}, - /* 207 */ {"var207", "Covariance of geopotential/temperature [m**2 K s**-2]"}, - /* 208 */ {"var208", "Variance of temperature [K**2]"}, - /* 209 */ {"var209", "Covariance of geopotential/specific humidity [m**2 s**-2]"}, - /* 210 */ {"var210", "Covariance of temperature/specific humidity [K]"}, - /* 211 */ {"var211", "Variance of specific humidity []"}, - /* 212 */ {"var212", "Covariance of u component/geopotential [M**3 s**-3]"}, - /* 213 */ {"var213", "Covariance of u component/temperature [m s**-1 K]"}, - /* 214 */ {"var214", "Covariance of u component/specific humidity [m s**-1]"}, - /* 215 */ {"var215", "Variance of u component [m**2 s**-2]"}, - /* 216 */ {"var216", "Covariance of v component/geopotential [M**3 s**-3]"}, - /* 217 */ {"var217", "Covariance of v component/temperaure [m s**-1 K]"}, - /* 218 */ {"var218", "Covariance of v component/specific humidity [m s**-1]"}, - /* 219 */ {"var219", "Covariance of v component/u component [m**2 s**-2]"}, - /* 220 */ {"var220", "Variance of v component [m**2 s**-2]"}, - /* 221 */ {"var221", "Covariance of omega/geopotential [m**2 Pa s**-3]"}, - /* 222 */ {"var222", "Covariance of omega/temperature [Pa s**-1 K]"}, - /* 223 */ {"var223", "Covariance of omega/specific humidity [Pa s**-1]"}, - /* 224 */ {"var224", "Covariance of omega/u component [m Pa s**-2]"}, - /* 225 */ {"var225", "Covariance of omega/v component [m Pa s**-2]"}, - /* 226 */ {"var226", "Variance of omega [Pa**2 s**-2]"}, - /* 227 */ {"var227", "Variance of surface pressure [Pa**2]"}, - /* 228 */ {"var228", "undefined"}, - /* 229 */ {"var229", "Variance of relative humidity [dimensionless]"}, - /* 230 */ {"var230", "Covariance of u component/ozone [m s**-1]"}, - /* 231 */ {"var231", "Covariance of v component/ozone [m s**-1]"}, - /* 232 */ {"var232", "Covariance of omega/ozone [Pa s**-1]"}, - /* 233 */ {"var233", "Variance of ozone [dimensionless]"}, - /* 234 */ {"var234", "undefined"}, - /* 235 */ {"var235", "undefined"}, - /* 236 */ {"var236", "undefined"}, - /* 237 */ {"var237", "undefined"}, - /* 238 */ {"var238", "undefined"}, - /* 239 */ {"var239", "undefined"}, - /* 240 */ {"var240", "undefined"}, - /* 241 */ {"var241", "undefined"}, - /* 242 */ {"var242", "undefined"}, - /* 243 */ {"var243", "undefined"}, - /* 244 */ {"var244", "undefined"}, - /* 245 */ {"var245", "undefined"}, - /* 246 */ {"var246", "undefined"}, - /* 247 */ {"var247", "undefined"}, - /* 248 */ {"var248", "undefined"}, - /* 249 */ {"var249", "undefined"}, - /* 250 */ {"var250", "undefined"}, - /* 251 */ {"var251", "undefined"}, - /* 252 */ {"var252", "undefined"}, - /* 253 */ {"var253", "undefined"}, - /* 254 */ {"var254", "undefined"}, - /* 255 */ {"var255", "Indicates a missing value []"}, -}; - -const struct ParmTable parm_table_ecmwf_170[256] = { - /* 0 */ {"var0", "undefined"}, - /* 1 */ {"var1", "undefined"}, - /* 2 */ {"var2", "undefined"}, - /* 3 */ {"var3", "undefined"}, - /* 4 */ {"var4", "undefined"}, - /* 5 */ {"var5", "undefined"}, - /* 6 */ {"var6", "undefined"}, - /* 7 */ {"var7", "undefined"}, - /* 8 */ {"var8", "undefined"}, - /* 9 */ {"var9", "undefined"}, - /* 10 */ {"var10", "undefined"}, - /* 11 */ {"var11", "undefined"}, - /* 12 */ {"var12", "undefined"}, - /* 13 */ {"var13", "undefined"}, - /* 14 */ {"var14", "undefined"}, - /* 15 */ {"var15", "undefined"}, - /* 16 */ {"var16", "undefined"}, - /* 17 */ {"var17", "undefined"}, - /* 18 */ {"var18", "undefined"}, - /* 19 */ {"var19", "undefined"}, - /* 20 */ {"var20", "undefined"}, - /* 21 */ {"var21", "undefined"}, - /* 22 */ {"var22", "undefined"}, - /* 23 */ {"var23", "undefined"}, - /* 24 */ {"var24", "undefined"}, - /* 25 */ {"var25", "undefined"}, - /* 26 */ {"var26", "undefined"}, - /* 27 */ {"var27", "undefined"}, - /* 28 */ {"var28", "undefined"}, - /* 29 */ {"var29", "undefined"}, - /* 30 */ {"var30", "undefined"}, - /* 31 */ {"var31", "undefined"}, - /* 32 */ {"var32", "undefined"}, - /* 33 */ {"var33", "undefined"}, - /* 34 */ {"var34", "undefined"}, - /* 35 */ {"var35", "undefined"}, - /* 36 */ {"var36", "undefined"}, - /* 37 */ {"var37", "undefined"}, - /* 38 */ {"var38", "undefined"}, - /* 39 */ {"var39", "undefined"}, - /* 40 */ {"var40", "undefined"}, - /* 41 */ {"var41", "undefined"}, - /* 42 */ {"var42", "undefined"}, - /* 43 */ {"var43", "undefined"}, - /* 44 */ {"var44", "undefined"}, - /* 45 */ {"var45", "undefined"}, - /* 46 */ {"var46", "undefined"}, - /* 47 */ {"var47", "undefined"}, - /* 48 */ {"var48", "undefined"}, - /* 49 */ {"var49", "undefined"}, - /* 50 */ {"var50", "undefined"}, - /* 51 */ {"var51", "undefined"}, - /* 52 */ {"var52", "undefined"}, - /* 53 */ {"var53", "undefined"}, - /* 54 */ {"var54", "undefined"}, - /* 55 */ {"var55", "undefined"}, - /* 56 */ {"var56", "undefined"}, - /* 57 */ {"var57", "undefined"}, - /* 58 */ {"var58", "undefined"}, - /* 59 */ {"var59", "undefined"}, - /* 60 */ {"var60", "undefined"}, - /* 61 */ {"var61", "undefined"}, - /* 62 */ {"var62", "undefined"}, - /* 63 */ {"var63", "undefined"}, - /* 64 */ {"var64", "undefined"}, - /* 65 */ {"var65", "undefined"}, - /* 66 */ {"var66", "undefined"}, - /* 67 */ {"var67", "undefined"}, - /* 68 */ {"var68", "undefined"}, - /* 69 */ {"var69", "undefined"}, - /* 70 */ {"var70", "undefined"}, - /* 71 */ {"var71", "undefined"}, - /* 72 */ {"var72", "undefined"}, - /* 73 */ {"var73", "undefined"}, - /* 74 */ {"var74", "undefined"}, - /* 75 */ {"var75", "undefined"}, - /* 76 */ {"var76", "undefined"}, - /* 77 */ {"var77", "undefined"}, - /* 78 */ {"var78", "undefined"}, - /* 79 */ {"var79", "undefined"}, - /* 80 */ {"var80", "undefined"}, - /* 81 */ {"var81", "undefined"}, - /* 82 */ {"var82", "undefined"}, - /* 83 */ {"var83", "undefined"}, - /* 84 */ {"var84", "undefined"}, - /* 85 */ {"var85", "undefined"}, - /* 86 */ {"var86", "undefined"}, - /* 87 */ {"var87", "undefined"}, - /* 88 */ {"var88", "undefined"}, - /* 89 */ {"var89", "undefined"}, - /* 90 */ {"var90", "undefined"}, - /* 91 */ {"var91", "undefined"}, - /* 92 */ {"var92", "undefined"}, - /* 93 */ {"var93", "undefined"}, - /* 94 */ {"var94", "undefined"}, - /* 95 */ {"var95", "undefined"}, - /* 96 */ {"var96", "undefined"}, - /* 97 */ {"var97", "undefined"}, - /* 98 */ {"var98", "undefined"}, - /* 99 */ {"var99", "undefined"}, - /* 100 */ {"var100", "undefined"}, - /* 101 */ {"var101", "undefined"}, - /* 102 */ {"var102", "undefined"}, - /* 103 */ {"var103", "undefined"}, - /* 104 */ {"var104", "undefined"}, - /* 105 */ {"var105", "undefined"}, - /* 106 */ {"var106", "undefined"}, - /* 107 */ {"var107", "undefined"}, - /* 108 */ {"var108", "undefined"}, - /* 109 */ {"var109", "undefined"}, - /* 110 */ {"var110", "undefined"}, - /* 111 */ {"var111", "undefined"}, - /* 112 */ {"var112", "undefined"}, - /* 113 */ {"var113", "undefined"}, - /* 114 */ {"var114", "undefined"}, - /* 115 */ {"var115", "undefined"}, - /* 116 */ {"var116", "undefined"}, - /* 117 */ {"var117", "undefined"}, - /* 118 */ {"var118", "undefined"}, - /* 119 */ {"var119", "undefined"}, - /* 120 */ {"var120", "undefined"}, - /* 121 */ {"var121", "undefined"}, - /* 122 */ {"var122", "undefined"}, - /* 123 */ {"var123", "undefined"}, - /* 124 */ {"var124", "undefined"}, - /* 125 */ {"var125", "undefined"}, - /* 126 */ {"var126", "undefined"}, - /* 127 */ {"var127", "undefined"}, - /* 128 */ {"var128", "undefined"}, - /* 129 */ {"Z", "Geopotential [m**2 s**-2]"}, - /* 130 */ {"T", "Temperature [K]"}, - /* 131 */ {"U", "U velocity [m s**-1]"}, - /* 132 */ {"V", "V velocity [m s**-1]"}, - /* 133 */ {"var133", "undefined"}, - /* 134 */ {"var134", "undefined"}, - /* 135 */ {"var135", "undefined"}, - /* 136 */ {"var136", "undefined"}, - /* 137 */ {"var137", "undefined"}, - /* 138 */ {"VO", "Vorticity (relative) [s**-1]"}, - /* 139 */ {"var139", "undefined"}, - /* 140 */ {"SWL1", "Soil wetness level 1 [m]"}, - /* 141 */ {"SD", "Snow depth [m of water equivalent]"}, - /* 142 */ {"var142", "undefined"}, - /* 143 */ {"var143", "undefined"}, - /* 144 */ {"var144", "undefined"}, - /* 145 */ {"var145", "undefined"}, - /* 146 */ {"var146", "undefined"}, - /* 147 */ {"var147", "undefined"}, - /* 148 */ {"var148", "undefined"}, - /* 149 */ {"TSW", "Total soil moisture [m]"}, - /* 150 */ {"var150", "undefined"}, - /* 151 */ {"MSL", "Mean sea level pressure [Pa]"}, - /* 152 */ {"var152", "undefined"}, - /* 153 */ {"var153", "undefined"}, - /* 154 */ {"var154", "undefined"}, - /* 155 */ {"D", "Divergence [s**-1]"}, - /* 156 */ {"var156", "undefined"}, - /* 157 */ {"var157", "undefined"}, - /* 158 */ {"var158", "undefined"}, - /* 159 */ {"var159", "undefined"}, - /* 160 */ {"var160", "undefined"}, - /* 161 */ {"var161", "undefined"}, - /* 162 */ {"var162", "undefined"}, - /* 163 */ {"var163", "undefined"}, - /* 164 */ {"var164", "undefined"}, - /* 165 */ {"var165", "undefined"}, - /* 166 */ {"var166", "undefined"}, - /* 167 */ {"var167", "undefined"}, - /* 168 */ {"var168", "undefined"}, - /* 169 */ {"var169", "undefined"}, - /* 170 */ {"var170", "undefined"}, - /* 171 */ {"SWL2", "Soil wetness level 2 [m]"}, - /* 172 */ {"var172", "undefined"}, - /* 173 */ {"var173", "undefined"}, - /* 174 */ {"var174", "undefined"}, - /* 175 */ {"var175", "undefined"}, - /* 176 */ {"var176", "undefined"}, - /* 177 */ {"var177", "undefined"}, - /* 178 */ {"var178", "undefined"}, - /* 179 */ {"TTR", "Top thermal radiation [W m-2]"}, - /* 180 */ {"var180", "undefined"}, - /* 181 */ {"var181", "undefined"}, - /* 182 */ {"var182", "undefined"}, - /* 183 */ {"var183", "undefined"}, - /* 184 */ {"SWL3", "Soil wetness level 3 [m]"}, - /* 185 */ {"var185", "undefined"}, - /* 186 */ {"var186", "undefined"}, - /* 187 */ {"var187", "undefined"}, - /* 188 */ {"var188", "undefined"}, - /* 189 */ {"var189", "undefined"}, - /* 190 */ {"var190", "undefined"}, - /* 191 */ {"var191", "undefined"}, - /* 192 */ {"var192", "undefined"}, - /* 193 */ {"var193", "undefined"}, - /* 194 */ {"var194", "undefined"}, - /* 195 */ {"var195", "undefined"}, - /* 196 */ {"var196", "undefined"}, - /* 197 */ {"var197", "undefined"}, - /* 198 */ {"var198", "undefined"}, - /* 199 */ {"var199", "undefined"}, - /* 200 */ {"var200", "undefined"}, - /* 201 */ {"MX2T", "Maximum temperature at 2 metres [K]"}, - /* 202 */ {"MN2T", "Minimum temperature at 2 metres [K]"}, - /* 203 */ {"var203", "undefined"}, - /* 204 */ {"var204", "undefined"}, - /* 205 */ {"var205", "undefined"}, - /* 206 */ {"var206", "undefined"}, - /* 207 */ {"var207", "undefined"}, - /* 208 */ {"var208", "undefined"}, - /* 209 */ {"var209", "undefined"}, - /* 210 */ {"var210", "undefined"}, - /* 211 */ {"var211", "undefined"}, - /* 212 */ {"var212", "undefined"}, - /* 213 */ {"var213", "undefined"}, - /* 214 */ {"var214", "undefined"}, - /* 215 */ {"var215", "undefined"}, - /* 216 */ {"var216", "undefined"}, - /* 217 */ {"var217", "undefined"}, - /* 218 */ {"var218", "undefined"}, - /* 219 */ {"var219", "undefined"}, - /* 220 */ {"var220", "undefined"}, - /* 221 */ {"var221", "undefined"}, - /* 222 */ {"var222", "undefined"}, - /* 223 */ {"var223", "undefined"}, - /* 224 */ {"var224", "undefined"}, - /* 225 */ {"var225", "undefined"}, - /* 226 */ {"var226", "undefined"}, - /* 227 */ {"var227", "undefined"}, - /* 228 */ {"TP", "Total precipitation [m]"}, - /* 229 */ {"var229", "undefined"}, - /* 230 */ {"var230", "undefined"}, - /* 231 */ {"var231", "undefined"}, - /* 232 */ {"var232", "undefined"}, - /* 233 */ {"var233", "undefined"}, - /* 234 */ {"var234", "undefined"}, - /* 235 */ {"var235", "undefined"}, - /* 236 */ {"var236", "undefined"}, - /* 237 */ {"var237", "undefined"}, - /* 238 */ {"var238", "undefined"}, - /* 239 */ {"var239", "undefined"}, - /* 240 */ {"var240", "undefined"}, - /* 241 */ {"var241", "undefined"}, - /* 242 */ {"var242", "undefined"}, - /* 243 */ {"var243", "undefined"}, - /* 244 */ {"var244", "undefined"}, - /* 245 */ {"var245", "undefined"}, - /* 246 */ {"var246", "undefined"}, - /* 247 */ {"var247", "undefined"}, - /* 248 */ {"var248", "undefined"}, - /* 249 */ {"var249", "undefined"}, - /* 250 */ {"var250", "undefined"}, - /* 251 */ {"var251", "undefined"}, - /* 252 */ {"var252", "undefined"}, - /* 253 */ {"var253", "undefined"}, - /* 254 */ {"var254", "undefined"}, - /* 255 */ {"var255", "Indicates a missing value []"}, -}; - -const struct ParmTable parm_table_ecmwf_171[256] = { - /* 0 */ {"var0", "undefined"}, - /* 1 */ {"STRFA", "Stream function anomaly [m**2 s**-1]"}, - /* 2 */ {"VPOTA", "Velocity potential anomaly [m**2 s**-1]"}, - /* 3 */ {"var3", "Potential temperature [K]"}, - /* 4 */ {"var4", "Equivalent potential temperature [K]"}, - /* 5 */ {"var5", "Saturated equivalent potential temperature [K]"}, - /* 6 */ {"var6", "undefined"}, - /* 7 */ {"var7", "undefined"}, - /* 8 */ {"var8", "undefined"}, - /* 9 */ {"var9", "undefined"}, - /* 10 */ {"var10", "undefined"}, - /* 11 */ {"var11", "U component of divergent wind [m s**-1]"}, - /* 12 */ {"var12", "V component of divergent wind [m s**-1]"}, - /* 13 */ {"var13", "U component of rotational wind [m s**-1]"}, - /* 14 */ {"var14", "V component of rotational wind [m s**-1]"}, - /* 15 */ {"var15", "undefined"}, - /* 16 */ {"var16", "undefined"}, - /* 17 */ {"var17", "undefined"}, - /* 18 */ {"var18", "undefined"}, - /* 19 */ {"var19", "undefined"}, - /* 20 */ {"var20", "undefined"}, - /* 21 */ {"var21", "Unbalanced component of temperature [K]"}, - /* 22 */ {"var22", "Unbalanced component of logarithm of surface pressure []"}, - /* 23 */ {"var23", "Unbalanced component of divergence [s**-1]"}, - /* 24 */ {"var24", "undefined"}, - /* 25 */ {"var25", "undefined"}, - /* 26 */ {"var26", "Lake cover [(0 - 1)]"}, - /* 27 */ {"var27", "Low vegetation cover [(0 - 1)]"}, - /* 28 */ {"var28", "High vegetation cover [(0 - 1)]"}, - /* 29 */ {"var29", "Type of low vegetation []"}, - /* 30 */ {"var30", "Type of high vegetation []"}, - /* 31 */ {"var31", "Sea-ice cover [(0 - 1)]"}, - /* 32 */ {"var32", "Snow albedo [(0 - 1)]"}, - /* 33 */ {"var33", "Snow density [kg m**-3]"}, - /* 34 */ {"var34", "Sea surface temperature [K]"}, - /* 35 */ {"var35", "Ice surface temperature layer 1 [K]"}, - /* 36 */ {"var36", "Ice surface temperature layer 2 [K]"}, - /* 37 */ {"var37", "Ice surface temperature layer 3 [K]"}, - /* 38 */ {"var38", "Ice surface temperature layer 4 [K]"}, - /* 39 */ {"var39", "Volumetric soil water layer 1 [m**3 m**-3]"}, - /* 40 */ {"var40", "Volumetric soil water layer 2 [m**3 m**-3]"}, - /* 41 */ {"var41", "Volumetric soil water layer 3 [m**3 m**-3]"}, - /* 42 */ {"var42", "Volumetric soil water layer 4 [m**3 m**-3]"}, - /* 43 */ {"var43", "Soil type []"}, - /* 44 */ {"var44", "Snow evaporation [m of water]"}, - /* 45 */ {"var45", "Snowmelt [m of water]"}, - /* 46 */ {"var46", "Solar duration [s]"}, - /* 47 */ {"var47", "Direct solar radiation [w m**-2]"}, - /* 48 */ {"var48", "Magnitude of surface stress [N m**-2 s]"}, - /* 49 */ {"var49", "10 metre wind gust [m s**-1]"}, - /* 50 */ {"var50", "Large-scale precipitation fraction [s]"}, - /* 51 */ {"var51", "Maximum 2 metre temperature [K]"}, - /* 52 */ {"var52", "Minimum 2 metre temperature [K]"}, - /* 53 */ {"var53", "Montgomery potential [m**2 s**-2]"}, - /* 54 */ {"var54", "Pressure [Pa]"}, - /* 55 */ {"var55", "Mean 2 metre temperature in past 24 hours [K]"}, - /* 56 */ {"var56", "Mean 2 metre dewpoint temperature in past 24 hours [K]"}, - /* 57 */ {"var57", "Downward UV radiation at the surface [w m**-2]"}, - /* 58 */ {"var58", "Photosynthetically active radiation at the surface [w m**-2]"}, - /* 59 */ {"var59", "Convective available potential energy [J kg**-1]"}, - /* 60 */ {"var60", "Potential vorticity [K m**2 kg**-1 s**-1]"}, - /* 61 */ {"var61", "Total precipitation from observations [Millimetres*100 + number of stations]"}, - /* 62 */ {"var62", "Observation count []"}, - /* 63 */ {"var63", "Start time for skin temperature difference [s]"}, - /* 64 */ {"var64", "Finish time for skin temperature difference [s]"}, - /* 65 */ {"var65", "Skin temperature difference [K]"}, - /* 66 */ {"var66", "undefined"}, - /* 67 */ {"var67", "undefined"}, - /* 68 */ {"var68", "undefined"}, - /* 69 */ {"var69", "undefined"}, - /* 70 */ {"var70", "undefined"}, - /* 71 */ {"var71", "undefined"}, - /* 72 */ {"var72", "undefined"}, - /* 73 */ {"var73", "undefined"}, - /* 74 */ {"var74", "undefined"}, - /* 75 */ {"var75", "undefined"}, - /* 76 */ {"var76", "undefined"}, - /* 77 */ {"var77", "undefined"}, - /* 78 */ {"TCLWA", "Total column liquid water anomaly [kg m**-2]"}, - /* 79 */ {"TCIWA", "Total column ice water anomaly [kg m**-2]"}, - /* 80 */ {"var80", "undefined"}, - /* 81 */ {"var81", "undefined"}, - /* 82 */ {"var82", "undefined"}, - /* 83 */ {"var83", "undefined"}, - /* 84 */ {"var84", "undefined"}, - /* 85 */ {"var85", "undefined"}, - /* 86 */ {"var86", "undefined"}, - /* 87 */ {"var87", "undefined"}, - /* 88 */ {"var88", "undefined"}, - /* 89 */ {"var89", "undefined"}, - /* 90 */ {"var90", "undefined"}, - /* 91 */ {"var91", "undefined"}, - /* 92 */ {"var92", "undefined"}, - /* 93 */ {"var93", "undefined"}, - /* 94 */ {"var94", "undefined"}, - /* 95 */ {"var95", "undefined"}, - /* 96 */ {"var96", "undefined"}, - /* 97 */ {"var97", "undefined"}, - /* 98 */ {"var98", "undefined"}, - /* 99 */ {"var99", "undefined"}, - /* 100 */ {"var100", "undefined"}, - /* 101 */ {"var101", "undefined"}, - /* 102 */ {"var102", "undefined"}, - /* 103 */ {"var103", "undefined"}, - /* 104 */ {"var104", "undefined"}, - /* 105 */ {"var105", "undefined"}, - /* 106 */ {"var106", "undefined"}, - /* 107 */ {"var107", "undefined"}, - /* 108 */ {"var108", "undefined"}, - /* 109 */ {"var109", "undefined"}, - /* 110 */ {"var110", "undefined"}, - /* 111 */ {"var111", "undefined"}, - /* 112 */ {"var112", "undefined"}, - /* 113 */ {"var113", "undefined"}, - /* 114 */ {"var114", "undefined"}, - /* 115 */ {"var115", "undefined"}, - /* 116 */ {"var116", "undefined"}, - /* 117 */ {"var117", "undefined"}, - /* 118 */ {"var118", "undefined"}, - /* 119 */ {"var119", "undefined"}, - /* 120 */ {"var120", "undefined"}, - /* 121 */ {"var121", "undefined"}, - /* 122 */ {"var122", "undefined"}, - /* 123 */ {"var123", "undefined"}, - /* 124 */ {"var124", "undefined"}, - /* 125 */ {"var125", "Vertically integrated total energy [J m**-2]"}, - /* 126 */ {"var126", "Generic parameter for sensitive area prediction [Various]"}, - /* 127 */ {"var127", "Atmospheric tide []"}, - /* 128 */ {"var128", "Budget values []"}, - /* 129 */ {"ZA", "Geopotential anomaly [m**2 s**-2]"}, - /* 130 */ {"TA", "Temperature anomaly [K]"}, - /* 131 */ {"UA", "U velocity anomaly [m s**-1]"}, - /* 132 */ {"VA", "V velocity anomaly [m s**-1]"}, - /* 133 */ {"var133", "Specific humidity [kg kg**-1]"}, - /* 134 */ {"var134", "Surface pressure [Pa]"}, - /* 135 */ {"var135", "Vertical velocity [Pa s**-1]"}, - /* 136 */ {"TCWA", "Total column water [kg m**-2]"}, - /* 137 */ {"TCWVA", "Total column water vapour [kg m**-2]"}, - /* 138 */ {"var138", "Vorticity (relative) [s**-1]"}, - /* 139 */ {"STAL1", "Soil temperature level 1 [K]"}, - /* 140 */ {"var140", "Soil wetness level 1 [m of water]"}, - /* 141 */ {"var141", "Snow depth [m of water equivalent]"}, - /* 142 */ {"var142", "Stratiform precipitation (Large-scale precipitation) [m]"}, - /* 143 */ {"var143", "Convective precipitation [m]"}, - /* 144 */ {"var144", "Snowfall (convective + stratiform) [m of water equivalent]"}, - /* 145 */ {"var145", "Boundary layer dissipation [W m**-2 s]"}, - /* 146 */ {"var146", "Surface sensible heat flux [W m**-2 s]"}, - /* 147 */ {"var147", "Surface latent heat flux [W m**-2 s]"}, - /* 148 */ {"var148", "Charnock []"}, - /* 149 */ {"var149", "Surface net radiation [W m**-2 s]"}, - /* 150 */ {"var150", "Top net radiation []"}, - /* 151 */ {"MSLA", "Mean sea level pressure anomaly [Pa]"}, - /* 152 */ {"var152", "Logarithm of surface pressure []"}, - /* 153 */ {"var153", "Short-wave heating rate [K]"}, - /* 154 */ {"var154", "Long-wave heating rate [K]"}, - /* 155 */ {"var155", "Divergence [s**-1]"}, - /* 156 */ {"var156", "Height [m]"}, - /* 157 */ {"var157", "Relative humidity [%]"}, - /* 158 */ {"var158", "Tendency of surface pressure [Pa s**-1]"}, - /* 159 */ {"var159", "Boundary layer height [m]"}, - /* 160 */ {"var160", "Standard deviation of orography []"}, - /* 161 */ {"var161", "Anisotropy of sub-gridscale orography []"}, - /* 162 */ {"var162", "Angle of sub-gridscale orography [rad]"}, - /* 163 */ {"var163", "Slope of sub-gridscale orography []"}, - /* 164 */ {"TCCA", "Total cloud cover anomaly [(0 - 1)]"}, - /* 165 */ {"10UA", "10 metre U wind component anomaly [m s**-1]"}, - /* 166 */ {"10VA", "10 metre V wind component anomaly [m s**-1]"}, - /* 167 */ {"2TA", "2 metre temperature anomaly [K]"}, - /* 168 */ {"var168", "2 metre dewpoint temperature [K]"}, - /* 169 */ {"var169", "Surface solar radiation downwards [W m**-2 s]"}, - /* 170 */ {"var170", "Soil temperature level 2 [K]"}, - /* 171 */ {"var171", "Soil wetness level 2 [m of water]"}, - /* 172 */ {"var172", "Land-sea mask [(0 - 1)]"}, - /* 173 */ {"var173", "Surface roughness [m]"}, - /* 174 */ {"var174", "Albedo [(0 - 1)]"}, - /* 175 */ {"var175", "Surface thermal radiation downwards [W m**-2 s]"}, - /* 176 */ {"var176", "Surface solar radiation [W m**-2 s]"}, - /* 177 */ {"var177", "Surface thermal radiation [W m**-2 s]"}, - /* 178 */ {"var178", "Top solar radiation [W m**-2 s]"}, - /* 179 */ {"var179", "Top thermal radiation [W m**-2 s]"}, - /* 180 */ {"var180", "East-West surface stress [N m**-2 s]"}, - /* 181 */ {"var181", "North-South surface stress [N m**-2 s]"}, - /* 182 */ {"var182", "Evaporation [m of water]"}, - /* 183 */ {"var183", "Soil temperature level 3 [K]"}, - /* 184 */ {"var184", "Soil wetness level 3 [m of water]"}, - /* 185 */ {"var185", "Convective cloud cover [(0 - 1)]"}, - /* 186 */ {"var186", "Low cloud cover [(0 - 1)]"}, - /* 187 */ {"var187", "Medium cloud cover [(0 - 1)]"}, - /* 188 */ {"var188", "High cloud cover [(0 - 1)]"}, - /* 189 */ {"SUNDA", "Sunshine duration anomaly [s]"}, - /* 190 */ {"var190", "East-West component of sub-gridscale orographic variance [m**2]"}, - /* 191 */ {"var191", "North-South component of sub-gridscale orographic variance [m**2]"}, - /* 192 */ {"var192", "North-West/South-East component of sub-gridscale orographic variance [m**2]"}, - /* 193 */ {"var193", "North-East/South-West component of sub-gridscale orographic variance [m**2]"}, - /* 194 */ {"var194", "Brightness temperature [K]"}, - /* 195 */ {"var195", "Latitudinal component of gravity wave stress [N m**-2 s]"}, - /* 196 */ {"var196", "Meridional component of gravity wave stress [N m**-2 s]"}, - /* 197 */ {"var197", "Gravity wave dissipation [W m**-2 s]"}, - /* 198 */ {"var198", "Skin reservoir content [m of water]"}, - /* 199 */ {"var199", "Vegetation fraction [(0 - 1)]"}, - /* 200 */ {"var200", "Variance of sub-gridscale orography [m**2]"}, - /* 201 */ {"MX2TA", "Maximum temperature at 2 metres anomaly [K]"}, - /* 202 */ {"MN2TA", "Minimum temperature at 2 metres anomaly [K]"}, - /* 203 */ {"var203", "Ozone mass mixing ratio [kg kg**-1]"}, - /* 204 */ {"var204", "Precipitation analysis weights []"}, - /* 205 */ {"var205", "Runoff [m]"}, - /* 206 */ {"var206", "Total column ozone [kg m**-2]"}, - /* 207 */ {"var207", "10 metre wind speed [m s**-1]"}, - /* 208 */ {"var208", "Top net solar radiation, clear sky [W m**-2 s]"}, - /* 209 */ {"var209", "Top net thermal radiation, clear sky [W m**-2 s]"}, - /* 210 */ {"var210", "Surface net solar radiation, clear sky [W m**-2 s]"}, - /* 211 */ {"var211", "Surface net thermal radiation, clear sky [W m**-2 s]"}, - /* 212 */ {"var212", "Solar insolation [W m**-2]"}, - /* 213 */ {"var213", "undefined"}, - /* 214 */ {"var214", "Diabatic heating by radiation [K]"}, - /* 215 */ {"var215", "Diabatic heating by vertical diffusion [K]"}, - /* 216 */ {"var216", "Diabatic heating by cumulus convection [K]"}, - /* 217 */ {"var217", "Diabatic heating by large-scale condensation [K]"}, - /* 218 */ {"var218", "Vertical diffusion of zonal wind [m s**-1]"}, - /* 219 */ {"var219", "Vertical diffusion of meridional wind [m s**-1]"}, - /* 220 */ {"var220", "East-West gravity wave drag tendency [m s**-1]"}, - /* 221 */ {"var221", "North-South gravity wave drag tendency [m s**-1]"}, - /* 222 */ {"var222", "Convective tendency of zonal wind [m s**-1]"}, - /* 223 */ {"var223", "Convective tendency of meridional wind [m s**-1]"}, - /* 224 */ {"var224", "Vertical diffusion of humidity [kg kg**-1]"}, - /* 225 */ {"var225", "Humidity tendency by cumulus convection [kg kg**-1]"}, - /* 226 */ {"var226", "Humidity tendency by large-scale condensation [kg kg**-1]"}, - /* 227 */ {"var227", "Change from removal of negative humidity [kg kg**-1]"}, - /* 228 */ {"TPA", "Total precipitation anomaly [m]"}, - /* 229 */ {"var229", "Instantaneous X surface stress [N m**-2]"}, - /* 230 */ {"var230", "Instantaneous Y surface stress [N m**-2]"}, - /* 231 */ {"var231", "Instantaneous surface heat flux [W m**-2]"}, - /* 232 */ {"var232", "Instantaneous moisture flux [kg m**-2 s]"}, - /* 233 */ {"var233", "Apparent surface humidity [kg kg**-1]"}, - /* 234 */ {"var234", "Logarithm of surface roughness length for heat []"}, - /* 235 */ {"var235", "Skin temperature [K]"}, - /* 236 */ {"var236", "Soil temperature level 4 [K]"}, - /* 237 */ {"var237", "Soil wetness level 4 [m]"}, - /* 238 */ {"var238", "Temperature of snow layer [K]"}, - /* 239 */ {"var239", "Convective snowfall [m of water equivalent]"}, - /* 240 */ {"var240", "Large-scale snowfall [m of water equivalent]"}, - /* 241 */ {"var241", "Accumulated cloud fraction tendency [(-1 to 1)]"}, - /* 242 */ {"var242", "Accumulated liquid water tendency [(-1 to 1)]"}, - /* 243 */ {"var243", "Forecast albedo [(0 - 1)]"}, - /* 244 */ {"var244", "Forecast surface roughness [m]"}, - /* 245 */ {"var245", "Forecast logarithm of surface roughness for heat []"}, - /* 246 */ {"var246", "Cloud liquid water content [kg kg**-1]"}, - /* 247 */ {"var247", "Cloud ice water content [kg kg**-1]"}, - /* 248 */ {"var248", "Cloud cover [(0 - 1)]"}, - /* 249 */ {"var249", "Accumulated ice water tendency [(-1 to 1)]"}, - /* 250 */ {"var250", "Ice age [(0 - 1)]"}, - /* 251 */ {"var251", "Adiabatic tendency of temperature [K]"}, - /* 252 */ {"var252", "Adiabatic tendency of humidity [kg kg**-1]"}, - /* 253 */ {"var253", "Adiabatic tendency of zonal wind [m s**-1]"}, - /* 254 */ {"var254", "Adiabatic tendency of meridional wind [m s**-1]"}, - /* 255 */ {"var255", "Indicates a missing value []"}, -}; - -/* ectable 172 from Geert Jan van Oldenborgh */ - -const struct ParmTable parm_table_ecmwf_172[256] = { - /* 0 */ {"var0", "undefined"}, - /* 1 */ {"var1", "undefined"}, - /* 2 */ {"var2", "undefined"}, - /* 3 */ {"var3", "undefined"}, - /* 4 */ {"var4", "undefined"}, - /* 5 */ {"var5", "undefined"}, - /* 6 */ {"var6", "undefined"}, - /* 7 */ {"var7", "undefined"}, - /* 8 */ {"var8", "undefined"}, - /* 9 */ {"var9", "undefined"}, - /* 10 */ {"var10", "undefined"}, - /* 11 */ {"var11", "undefined"}, - /* 12 */ {"var12", "undefined"}, - /* 13 */ {"var13", "undefined"}, - /* 14 */ {"var14", "undefined"}, - /* 15 */ {"var15", "undefined"}, - /* 16 */ {"var16", "undefined"}, - /* 17 */ {"var17", "undefined"}, - /* 18 */ {"var18", "undefined"}, - /* 19 */ {"var19", "undefined"}, - /* 20 */ {"var20", "undefined"}, - /* 21 */ {"var21", "undefined"}, - /* 22 */ {"var22", "undefined"}, - /* 23 */ {"var23", "undefined"}, - /* 24 */ {"var24", "undefined"}, - /* 25 */ {"var25", "undefined"}, - /* 26 */ {"var26", "undefined"}, - /* 27 */ {"var27", "undefined"}, - /* 28 */ {"var28", "undefined"}, - /* 29 */ {"var29", "undefined"}, - /* 30 */ {"var30", "undefined"}, - /* 31 */ {"var31", "undefined"}, - /* 32 */ {"var32", "undefined"}, - /* 33 */ {"var33", "undefined"}, - /* 34 */ {"var34", "undefined"}, - /* 35 */ {"var35", "undefined"}, - /* 36 */ {"var36", "undefined"}, - /* 37 */ {"var37", "undefined"}, - /* 38 */ {"var38", "undefined"}, - /* 39 */ {"var39", "undefined"}, - /* 40 */ {"var40", "undefined"}, - /* 41 */ {"var41", "undefined"}, - /* 42 */ {"var42", "undefined"}, - /* 43 */ {"var43", "undefined"}, - /* 44 */ {"SNOE", "Snow evaporation m of water s**-1"}, - /* 45 */ {"SNOM", "Snow melt m of water s**-1"}, - /* 46 */ {"var46", "undefined"}, - /* 47 */ {"var47", "undefined"}, - /* 48 */ {"MSS", "magnitude of surface stress N m**-2"}, - /* 49 */ {"var49", "undefined"}, - /* 50 */ {"", "Large-scale precipitation fraction -"}, - /* 51 */ {"var51", "undefined"}, - /* 52 */ {"var52", "undefined"}, - /* 53 */ {"var53", "undefined"}, - /* 54 */ {"var54", "undefined"}, - /* 55 */ {"var55", "undefined"}, - /* 56 */ {"var56", "undefined"}, - /* 57 */ {"var57", "undefined"}, - /* 58 */ {"var58", "undefined"}, - /* 59 */ {"var59", "undefined"}, - /* 60 */ {"var60", "undefined"}, - /* 61 */ {"var61", "undefined"}, - /* 62 */ {"var62", "undefined"}, - /* 63 */ {"var63", "undefined"}, - /* 64 */ {"var64", "undefined"}, - /* 65 */ {"var65", "undefined"}, - /* 66 */ {"var66", "undefined"}, - /* 67 */ {"var67", "undefined"}, - /* 68 */ {"var68", "undefined"}, - /* 69 */ {"var69", "undefined"}, - /* 70 */ {"var70", "undefined"}, - /* 71 */ {"var71", "undefined"}, - /* 72 */ {"var72", "undefined"}, - /* 73 */ {"var73", "undefined"}, - /* 74 */ {"var74", "undefined"}, - /* 75 */ {"var75", "undefined"}, - /* 76 */ {"var76", "undefined"}, - /* 77 */ {"var77", "undefined"}, - /* 78 */ {"var78", "undefined"}, - /* 79 */ {"var79", "undefined"}, - /* 80 */ {"var80", "undefined"}, - /* 81 */ {"var81", "undefined"}, - /* 82 */ {"var82", "undefined"}, - /* 83 */ {"var83", "undefined"}, - /* 84 */ {"var84", "undefined"}, - /* 85 */ {"var85", "undefined"}, - /* 86 */ {"var86", "undefined"}, - /* 87 */ {"var87", "undefined"}, - /* 88 */ {"var88", "undefined"}, - /* 89 */ {"var89", "undefined"}, - /* 90 */ {"var90", "undefined"}, - /* 91 */ {"var91", "undefined"}, - /* 92 */ {"var92", "undefined"}, - /* 93 */ {"var93", "undefined"}, - /* 94 */ {"var94", "undefined"}, - /* 95 */ {"var95", "undefined"}, - /* 96 */ {"var96", "undefined"}, - /* 97 */ {"var97", "undefined"}, - /* 98 */ {"var98", "undefined"}, - /* 99 */ {"var99", "undefined"}, - /* 100 */ {"var100", "undefined"}, - /* 101 */ {"var101", "undefined"}, - /* 102 */ {"var102", "undefined"}, - /* 103 */ {"var103", "undefined"}, - /* 104 */ {"var104", "undefined"}, - /* 105 */ {"var105", "undefined"}, - /* 106 */ {"var106", "undefined"}, - /* 107 */ {"var107", "undefined"}, - /* 108 */ {"var108", "undefined"}, - /* 109 */ {"var109", "undefined"}, - /* 110 */ {"var110", "undefined"}, - /* 111 */ {"var111", "undefined"}, - /* 112 */ {"var112", "undefined"}, - /* 113 */ {"var113", "undefined"}, - /* 114 */ {"var114", "undefined"}, - /* 115 */ {"var115", "undefined"}, - /* 116 */ {"var116", "undefined"}, - /* 117 */ {"var117", "undefined"}, - /* 118 */ {"var118", "undefined"}, - /* 119 */ {"var119", "undefined"}, - /* 120 */ {"var120", "undefined"}, - /* 121 */ {"var121", "undefined"}, - /* 122 */ {"var122", "undefined"}, - /* 123 */ {"var123", "undefined"}, - /* 124 */ {"var124", "undefined"}, - /* 125 */ {"var125", "undefined"}, - /* 126 */ {"var126", "undefined"}, - /* 127 */ {"var127", "undefined"}, - /* 128 */ {"var128", "undefined"}, - /* 129 */ {"var129", "undefined"}, - /* 130 */ {"var130", "undefined"}, - /* 131 */ {"var131", "undefined"}, - /* 132 */ {"var132", "undefined"}, - /* 133 */ {"var133", "undefined"}, - /* 134 */ {"var134", "undefined"}, - /* 135 */ {"var135", "undefined"}, - /* 136 */ {"var136", "undefined"}, - /* 137 */ {"var137", "undefined"}, - /* 138 */ {"var138", "undefined"}, - /* 139 */ {"var139", "undefined"}, - /* 140 */ {"var140", "undefined"}, - /* 141 */ {"var141", "undefined"}, - /* 142 */ {"LSP", "Large scale precipitation m s**-1"}, - /* 143 */ {"CP", "Convective precipitation m s**-1"}, - /* 144 */ {"SF", "Snowfall (convective + stratiform) m of water equivalent s**-1"}, - /* 145 */ {"BLD", "Boundary layer dissipation W m**-2"}, - /* 146 */ {"SSHF", "Surface sensible heat flux W m**-2"}, - /* 147 */ {"SLHF", "Surface latent heat flux W m**-2"}, - /* 148 */ {"SNR", "Surface net radiation W m**-2"}, - /* 149 */ {"var149", "undefined"}, - /* 150 */ {"var150", "undefined"}, - /* 151 */ {"var151", "undefined"}, - /* 152 */ {"var152", "undefined"}, - /* 153 */ {"SWHR", "Short-wave heating rate K s**-1"}, - /* 154 */ {"LWHR", "Long-wave heating rate K s**-1"}, - /* 155 */ {"var155", "undefined"}, - /* 156 */ {"var156", "undefined"}, - /* 157 */ {"var157", "undefined"}, - /* 158 */ {"var158", "undefined"}, - /* 159 */ {"var159", "undefined"}, - /* 160 */ {"var160", "undefined"}, - /* 161 */ {"var161", "undefined"}, - /* 162 */ {"var162", "undefined"}, - /* 163 */ {"var163", "undefined"}, - /* 164 */ {"var164", "undefined"}, - /* 165 */ {"var165", "undefined"}, - /* 166 */ {"var166", "undefined"}, - /* 167 */ {"var167", "undefined"}, - /* 168 */ {"var168", "undefined"}, - /* 169 */ {"SSRD", "Surface solar radiation downwards W m**-2"}, - /* 170 */ {"var170", "undefined"}, - /* 171 */ {"var171", "undefined"}, - /* 172 */ {"var172", "undefined"}, - /* 173 */ {"var173", "undefined"}, - /* 174 */ {"var174", "undefined"}, - /* 175 */ {"STRD", "Surface thermal radiation downwards W m**-2"}, - /* 176 */ {"SSR", "Surface solar radiation W m**-2"}, - /* 177 */ {"STR", "Surface thermal radiation W m**-2"}, - /* 178 */ {"TSR", "Top solar radiation W m**-2"}, - /* 179 */ {"TTR", "Top thermal radiation W m-2"}, - /* 180 */ {"EWSS", "East-West surface stress N m**-2"}, - /* 181 */ {"NSSS", "North-South surface stress N m**-2"}, - /* 182 */ {"E", "Evaporation m of water s**-1"}, - /* 183 */ {"var183", "undefined"}, - /* 184 */ {"var184", "undefined"}, - /* 185 */ {"var185", "undefined"}, - /* 186 */ {"var186", "undefined"}, - /* 187 */ {"var187", "undefined"}, - /* 188 */ {"var188", "undefined"}, - /* 189 */ {"SUND", "Sunshine duration"}, - /* 190 */ {"var190", "undefined"}, - /* 191 */ {"var191", "undefined"}, - /* 192 */ {"var192", "undefined"}, - /* 193 */ {"var193", "undefined"}, - /* 194 */ {"var194", "undefined"}, - /* 195 */ {"LGWS", "Latitudinal component of gravity wave stress N m**-2"}, - /* 196 */ {"MGWS", "Meridional component of gravity wave stress N m**-2"}, - /* 197 */ {"GWD", "Gravity wave dissipation W m**-2"}, - /* 198 */ {"var198", "undefined"}, - /* 199 */ {"var199", "undefined"}, - /* 200 */ {"var200", "undefined"}, - /* 201 */ {"var201", "undefined"}, - /* 202 */ {"var202", "undefined"}, - /* 203 */ {"var203", "undefined"}, - /* 204 */ {"var204", "undefined"}, - /* 205 */ {"RO", "Runoff m s**-1"}, - /* 206 */ {"var206", "undefined"}, - /* 207 */ {"var207", "undefined"}, - /* 208 */ {"TSRC", "Top net solar radiation, clear sky W m**-2"}, - /* 209 */ {"TTRC", "Top net thermal radiation, clear sky W m**-2"}, - /* 210 */ {"SSRC", "Surface net solar radiation, clear sky W m**-2"}, - /* 211 */ {"STRC", "Surface net thermal radiation, clear sky W m**-2"}, - /* 212 */ {"SI", "Solar insolation W m**-2"}, - /* 213 */ {"var213", "undefined"}, - /* 214 */ {"var214", "undefined"}, - /* 215 */ {"var215", "undefined"}, - /* 216 */ {"var216", "undefined"}, - /* 217 */ {"var217", "undefined"}, - /* 218 */ {"var218", "undefined"}, - /* 219 */ {"var219", "undefined"}, - /* 220 */ {"var220", "undefined"}, - /* 221 */ {"var221", "undefined"}, - /* 222 */ {"var222", "undefined"}, - /* 223 */ {"var223", "undefined"}, - /* 224 */ {"var224", "undefined"}, - /* 225 */ {"var225", "undefined"}, - /* 226 */ {"var226", "undefined"}, - /* 227 */ {"var227", "undefined"}, - /* 228 */ {"TP", "Total precipitation m s**-1"}, - /* 229 */ {"var229", "undefined"}, - /* 230 */ {"var230", "undefined"}, - /* 231 */ {"var231", "undefined"}, - /* 232 */ {"var232", "undefined"}, - /* 233 */ {"var233", "undefined"}, - /* 234 */ {"var234", "undefined"}, - /* 235 */ {"var235", "undefined"}, - /* 236 */ {"var236", "undefined"}, - /* 237 */ {"var237", "undefined"}, - /* 238 */ {"var238", "undefined"}, - /* 239 */ {"CSF", "Convective snowfall m of water equivalent s**-1"}, - /* 240 */ {"LSF", "Large-scale snowfall m of water equivalent s**-1"}, - /* 241 */ {"var241", "undefined"}, - /* 242 */ {"var242", "undefined"}, - /* 243 */ {"var243", "undefined"}, - /* 244 */ {"var244", "undefined"}, - /* 245 */ {"var245", "undefined"}, - /* 246 */ {"var246", "undefined"}, - /* 247 */ {"var247", "undefined"}, - /* 248 */ {"var248", "undefined"}, - /* 249 */ {"var249", "undefined"}, - /* 250 */ {"var250", "undefined"}, - /* 251 */ {"var251", "undefined"}, - /* 252 */ {"var252", "undefined"}, - /* 253 */ {"var253", "undefined"}, - /* 254 */ {"var254", "undefined"}, - /* 255 */ {"var255", "undefined"}, -}; - - -const struct ParmTable parm_table_ecmwf_173[256] = { - /* 0 */ {"var0", "undefined"}, - /* 1 */ {"var1", "undefined"}, - /* 2 */ {"var2", "undefined"}, - /* 3 */ {"var3", "undefined"}, - /* 4 */ {"var4", "undefined"}, - /* 5 */ {"var5", "undefined"}, - /* 6 */ {"var6", "undefined"}, - /* 7 */ {"var7", "undefined"}, - /* 8 */ {"var8", "undefined"}, - /* 9 */ {"var9", "undefined"}, - /* 10 */ {"var10", "undefined"}, - /* 11 */ {"var11", "undefined"}, - /* 12 */ {"var12", "undefined"}, - /* 13 */ {"var13", "undefined"}, - /* 14 */ {"var14", "undefined"}, - /* 15 */ {"var15", "undefined"}, - /* 16 */ {"var16", "undefined"}, - /* 17 */ {"var17", "undefined"}, - /* 18 */ {"var18", "undefined"}, - /* 19 */ {"var19", "undefined"}, - /* 20 */ {"var20", "undefined"}, - /* 21 */ {"var21", "undefined"}, - /* 22 */ {"var22", "undefined"}, - /* 23 */ {"var23", "undefined"}, - /* 24 */ {"var24", "undefined"}, - /* 25 */ {"var25", "undefined"}, - /* 26 */ {"var26", "undefined"}, - /* 27 */ {"var27", "undefined"}, - /* 28 */ {"var28", "undefined"}, - /* 29 */ {"var29", "undefined"}, - /* 30 */ {"var30", "undefined"}, - /* 31 */ {"var31", "undefined"}, - /* 32 */ {"var32", "undefined"}, - /* 33 */ {"var33", "undefined"}, - /* 34 */ {"var34", "undefined"}, - /* 35 */ {"var35", "undefined"}, - /* 36 */ {"var36", "undefined"}, - /* 37 */ {"var37", "undefined"}, - /* 38 */ {"var38", "undefined"}, - /* 39 */ {"var39", "undefined"}, - /* 40 */ {"var40", "undefined"}, - /* 41 */ {"var41", "undefined"}, - /* 42 */ {"var42", "undefined"}, - /* 43 */ {"var43", "undefined"}, - /* 44 */ {"var44", "Snow evaporation anomaly [m of water s**-1]"}, - /* 45 */ {"var45", "Snowmelt anomaly [m of water s**-1]"}, - /* 46 */ {"var46", "undefined"}, - /* 47 */ {"var47", "undefined"}, - /* 48 */ {"var48", "Magnitude of surface stress anomaly [N m**-2]"}, - /* 49 */ {"var49", "undefined"}, - /* 50 */ {"var50", "Large-scale precipitation fraction anomaly []"}, - /* 51 */ {"var51", "undefined"}, - /* 52 */ {"var52", "undefined"}, - /* 53 */ {"var53", "undefined"}, - /* 54 */ {"var54", "undefined"}, - /* 55 */ {"var55", "undefined"}, - /* 56 */ {"var56", "undefined"}, - /* 57 */ {"var57", "undefined"}, - /* 58 */ {"var58", "undefined"}, - /* 59 */ {"var59", "undefined"}, - /* 60 */ {"var60", "undefined"}, - /* 61 */ {"var61", "undefined"}, - /* 62 */ {"var62", "undefined"}, - /* 63 */ {"var63", "undefined"}, - /* 64 */ {"var64", "undefined"}, - /* 65 */ {"var65", "undefined"}, - /* 66 */ {"var66", "undefined"}, - /* 67 */ {"var67", "undefined"}, - /* 68 */ {"var68", "undefined"}, - /* 69 */ {"var69", "undefined"}, - /* 70 */ {"var70", "undefined"}, - /* 71 */ {"var71", "undefined"}, - /* 72 */ {"var72", "undefined"}, - /* 73 */ {"var73", "undefined"}, - /* 74 */ {"var74", "undefined"}, - /* 75 */ {"var75", "undefined"}, - /* 76 */ {"var76", "undefined"}, - /* 77 */ {"var77", "undefined"}, - /* 78 */ {"var78", "undefined"}, - /* 79 */ {"var79", "undefined"}, - /* 80 */ {"var80", "undefined"}, - /* 81 */ {"var81", "undefined"}, - /* 82 */ {"var82", "undefined"}, - /* 83 */ {"var83", "undefined"}, - /* 84 */ {"var84", "undefined"}, - /* 85 */ {"var85", "undefined"}, - /* 86 */ {"var86", "undefined"}, - /* 87 */ {"var87", "undefined"}, - /* 88 */ {"var88", "undefined"}, - /* 89 */ {"var89", "undefined"}, - /* 90 */ {"var90", "undefined"}, - /* 91 */ {"var91", "undefined"}, - /* 92 */ {"var92", "undefined"}, - /* 93 */ {"var93", "undefined"}, - /* 94 */ {"var94", "undefined"}, - /* 95 */ {"var95", "undefined"}, - /* 96 */ {"var96", "undefined"}, - /* 97 */ {"var97", "undefined"}, - /* 98 */ {"var98", "undefined"}, - /* 99 */ {"var99", "undefined"}, - /* 100 */ {"var100", "undefined"}, - /* 101 */ {"var101", "undefined"}, - /* 102 */ {"var102", "undefined"}, - /* 103 */ {"var103", "undefined"}, - /* 104 */ {"var104", "undefined"}, - /* 105 */ {"var105", "undefined"}, - /* 106 */ {"var106", "undefined"}, - /* 107 */ {"var107", "undefined"}, - /* 108 */ {"var108", "undefined"}, - /* 109 */ {"var109", "undefined"}, - /* 110 */ {"var110", "undefined"}, - /* 111 */ {"var111", "undefined"}, - /* 112 */ {"var112", "undefined"}, - /* 113 */ {"var113", "undefined"}, - /* 114 */ {"var114", "undefined"}, - /* 115 */ {"var115", "undefined"}, - /* 116 */ {"var116", "undefined"}, - /* 117 */ {"var117", "undefined"}, - /* 118 */ {"var118", "undefined"}, - /* 119 */ {"var119", "undefined"}, - /* 120 */ {"var120", "undefined"}, - /* 121 */ {"var121", "undefined"}, - /* 122 */ {"var122", "undefined"}, - /* 123 */ {"var123", "undefined"}, - /* 124 */ {"var124", "undefined"}, - /* 125 */ {"var125", "undefined"}, - /* 126 */ {"var126", "undefined"}, - /* 127 */ {"var127", "undefined"}, - /* 128 */ {"var128", "undefined"}, - /* 129 */ {"var129", "undefined"}, - /* 130 */ {"var130", "undefined"}, - /* 131 */ {"var131", "undefined"}, - /* 132 */ {"var132", "undefined"}, - /* 133 */ {"var133", "undefined"}, - /* 134 */ {"var134", "undefined"}, - /* 135 */ {"var135", "undefined"}, - /* 136 */ {"var136", "undefined"}, - /* 137 */ {"var137", "undefined"}, - /* 138 */ {"var138", "undefined"}, - /* 139 */ {"var139", "undefined"}, - /* 140 */ {"var140", "undefined"}, - /* 141 */ {"var141", "undefined"}, - /* 142 */ {"var142", "Stratiform precipitation (Large-scale precipitation) anomaly [m s**-1]"}, - /* 143 */ {"var143", "Convective precipitation anomaly [m s**-1]"}, - /* 144 */ {"SFARA", "Snowfall (convective + stratiform) anomalous rate of accumulation [m of water equivalent s**-1]"}, - /* 145 */ {"var145", "Boundary layer dissipation anomaly [W m**-2]"}, - /* 146 */ {"var146", "Surface sensible heat flux anomaly [W m**-2]"}, - /* 147 */ {"var147", "Surface latent heat flux anomaly [W m**-2]"}, - /* 148 */ {"var148", "undefined"}, - /* 149 */ {"var149", "Surface net radiation anomaly [W m**-2]"}, - /* 150 */ {"var150", "undefined"}, - /* 151 */ {"var151", "undefined"}, - /* 152 */ {"var152", "undefined"}, - /* 153 */ {"var153", "Short-wave heating rate anomaly [K s**-1]"}, - /* 154 */ {"var154", "Long-wave heating rate anomaly [K s**-1]"}, - /* 155 */ {"var155", "undefined"}, - /* 156 */ {"var156", "undefined"}, - /* 157 */ {"var157", "undefined"}, - /* 158 */ {"var158", "undefined"}, - /* 159 */ {"var159", "undefined"}, - /* 160 */ {"var160", "undefined"}, - /* 161 */ {"var161", "undefined"}, - /* 162 */ {"var162", "undefined"}, - /* 163 */ {"var163", "undefined"}, - /* 164 */ {"var164", "undefined"}, - /* 165 */ {"var165", "undefined"}, - /* 166 */ {"var166", "undefined"}, - /* 167 */ {"var167", "undefined"}, - /* 168 */ {"var168", "undefined"}, - /* 169 */ {"var169", "Surface solar radiation downwards anomaly [W m**-2]"}, - /* 170 */ {"var170", "undefined"}, - /* 171 */ {"var171", "undefined"}, - /* 172 */ {"var172", "undefined"}, - /* 173 */ {"var173", "undefined"}, - /* 174 */ {"var174", "undefined"}, - /* 175 */ {"var175", "Surface thermal radiation downwards anomaly [W m**-2]"}, - /* 176 */ {"var176", "Surface solar radiation anomaly [W m**-2]"}, - /* 177 */ {"var177", "Surface thermal radiation anomaly [W m**-2]"}, - /* 178 */ {"var178", "Top solar radiation anomaly [W m**-2]"}, - /* 179 */ {"var179", "Top thermal radiation anomaly [W m**-2]"}, - /* 180 */ {"var180", "East-West surface stress anomaly [N m**-2]"}, - /* 181 */ {"var181", "North-South surface stress anomaly [N m**-2]"}, - /* 182 */ {"var182", "Evaporation anomaly [m of water s**-1]"}, - /* 183 */ {"var183", "undefined"}, - /* 184 */ {"var184", "undefined"}, - /* 185 */ {"var185", "undefined"}, - /* 186 */ {"var186", "undefined"}, - /* 187 */ {"var187", "undefined"}, - /* 188 */ {"var188", "undefined"}, - /* 189 */ {"SUNDARA", "Sunshine duration anomalous rate of accumulation [dimensionless]"}, - /* 190 */ {"var190", "undefined"}, - /* 191 */ {"var191", "undefined"}, - /* 192 */ {"var192", "undefined"}, - /* 193 */ {"var193", "undefined"}, - /* 194 */ {"var194", "undefined"}, - /* 195 */ {"var195", "Latitudinal component of gravity wave stress anomaly [N m**-2]"}, - /* 196 */ {"var196", "Meridional component of gravity wave stress anomaly [N m**-2]"}, - /* 197 */ {"var197", "Gravity wave dissipation anomaly [W m**-2]"}, - /* 198 */ {"var198", "undefined"}, - /* 199 */ {"var199", "undefined"}, - /* 200 */ {"var200", "undefined"}, - /* 201 */ {"var201", "undefined"}, - /* 202 */ {"var202", "undefined"}, - /* 203 */ {"var203", "undefined"}, - /* 204 */ {"var204", "undefined"}, - /* 205 */ {"var205", "Runoff anomaly [m s**-1]"}, - /* 206 */ {"var206", "undefined"}, - /* 207 */ {"var207", "undefined"}, - /* 208 */ {"var208", "Top net solar radiation, clear sky anomaly [W m**-2]"}, - /* 209 */ {"var209", "Top net thermal radiation, clear sky anomaly [W m**-2]"}, - /* 210 */ {"var210", "Surface net solar radiation, clear sky anomaly [W m**-2]"}, - /* 211 */ {"var211", "Surface net thermal radiation, clear sky anomaly [W m**-2]"}, - /* 212 */ {"var212", "Solar insolation anomaly [W m**-2 s**-1]"}, - /* 213 */ {"var213", "undefined"}, - /* 214 */ {"var214", "undefined"}, - /* 215 */ {"var215", "undefined"}, - /* 216 */ {"var216", "undefined"}, - /* 217 */ {"var217", "undefined"}, - /* 218 */ {"var218", "undefined"}, - /* 219 */ {"var219", "undefined"}, - /* 220 */ {"var220", "undefined"}, - /* 221 */ {"var221", "undefined"}, - /* 222 */ {"var222", "undefined"}, - /* 223 */ {"var223", "undefined"}, - /* 224 */ {"var224", "undefined"}, - /* 225 */ {"var225", "undefined"}, - /* 226 */ {"var226", "undefined"}, - /* 227 */ {"var227", "undefined"}, - /* 228 */ {"TPARA", "Total precipitation anomalous rate of accumulation [m s**-1]"}, - /* 229 */ {"var229", "undefined"}, - /* 230 */ {"var230", "undefined"}, - /* 231 */ {"var231", "undefined"}, - /* 232 */ {"var232", "undefined"}, - /* 233 */ {"var233", "undefined"}, - /* 234 */ {"var234", "undefined"}, - /* 235 */ {"var235", "undefined"}, - /* 236 */ {"var236", "undefined"}, - /* 237 */ {"var237", "undefined"}, - /* 238 */ {"var238", "undefined"}, - /* 239 */ {"var239", "Convective snowfall anomaly [m of water equivalent s**-1]"}, - /* 240 */ {"var240", "Large-scale snowfall anomaly [m of water equivalent s**-1]"}, - /* 241 */ {"var241", "undefined"}, - /* 242 */ {"var242", "undefined"}, - /* 243 */ {"var243", "undefined"}, - /* 244 */ {"var244", "undefined"}, - /* 245 */ {"var245", "undefined"}, - /* 246 */ {"var246", "undefined"}, - /* 247 */ {"var247", "undefined"}, - /* 248 */ {"var248", "undefined"}, - /* 249 */ {"var249", "undefined"}, - /* 250 */ {"var250", "undefined"}, - /* 251 */ {"var251", "undefined"}, - /* 252 */ {"var252", "undefined"}, - /* 253 */ {"var253", "undefined"}, - /* 254 */ {"var254", "undefined"}, - /* 255 */ {"var255", "Indicates a missing value []"}, -}; - -const struct ParmTable parm_table_ecmwf_174[256] = { - /* 0 */ {"var0", "undefined"}, - /* 1 */ {"var1", "undefined"}, - /* 2 */ {"var2", "undefined"}, - /* 3 */ {"var3", "undefined"}, - /* 4 */ {"var4", "undefined"}, - /* 5 */ {"var5", "undefined"}, - /* 6 */ {"var6", "Total soil moisture [m]"}, - /* 7 */ {"var7", "undefined"}, - /* 8 */ {"SRO", "Surface runoff [kg m**-2]"}, - /* 9 */ {"SSRO", "Sub-surface runoff [kg m**-2]"}, - /* 10 */ {"var10", "undefined"}, - /* 11 */ {"var11", "undefined"}, - /* 12 */ {"var12", "undefined"}, - /* 13 */ {"var13", "undefined"}, - /* 14 */ {"var14", "undefined"}, - /* 15 */ {"var15", "undefined"}, - /* 16 */ {"var16", "undefined"}, - /* 17 */ {"var17", "undefined"}, - /* 18 */ {"var18", "undefined"}, - /* 19 */ {"var19", "undefined"}, - /* 20 */ {"var20", "undefined"}, - /* 21 */ {"var21", "undefined"}, - /* 22 */ {"var22", "undefined"}, - /* 23 */ {"var23", "undefined"}, - /* 24 */ {"var24", "undefined"}, - /* 25 */ {"var25", "undefined"}, - /* 26 */ {"var26", "undefined"}, - /* 27 */ {"var27", "undefined"}, - /* 28 */ {"var28", "undefined"}, - /* 29 */ {"var29", "undefined"}, - /* 30 */ {"var30", "undefined"}, - /* 31 */ {"var31", "Fraction of sea-ice in sea [(0 - 1)]"}, - /* 32 */ {"var32", "undefined"}, - /* 33 */ {"var33", "undefined"}, - /* 34 */ {"var34", "Open-sea surface temperature [K]"}, - /* 35 */ {"var35", "undefined"}, - /* 36 */ {"var36", "undefined"}, - /* 37 */ {"var37", "undefined"}, - /* 38 */ {"var38", "undefined"}, - /* 39 */ {"var39", "Volumetric soil water layer 1 [m**3 m**-3]"}, - /* 40 */ {"var40", "Volumetric soil water layer 2 [m**3 m**-3]"}, - /* 41 */ {"var41", "Volumetric soil water layer 3 [m**3 m**-3]"}, - /* 42 */ {"var42", "Volumetric soil water layer 4 [m**3 m**-3]"}, - /* 43 */ {"var43", "undefined"}, - /* 44 */ {"var44", "undefined"}, - /* 45 */ {"var45", "undefined"}, - /* 46 */ {"var46", "undefined"}, - /* 47 */ {"var47", "undefined"}, - /* 48 */ {"var48", "undefined"}, - /* 49 */ {"var49", "10 metre wind gust over last 24 hours [m s**-1]"}, - /* 50 */ {"var50", "undefined"}, - /* 51 */ {"var51", "undefined"}, - /* 52 */ {"var52", "undefined"}, - /* 53 */ {"var53", "undefined"}, - /* 54 */ {"var54", "undefined"}, - /* 55 */ {"var55", "1.5m temperature - mean over last 24 hours [K]"}, - /* 56 */ {"var56", "undefined"}, - /* 57 */ {"var57", "undefined"}, - /* 58 */ {"var58", "undefined"}, - /* 59 */ {"var59", "undefined"}, - /* 60 */ {"var60", "undefined"}, - /* 61 */ {"var61", "undefined"}, - /* 62 */ {"var62", "undefined"}, - /* 63 */ {"var63", "undefined"}, - /* 64 */ {"var64", "undefined"}, - /* 65 */ {"var65", "undefined"}, - /* 66 */ {"var66", "undefined"}, - /* 67 */ {"var67", "undefined"}, - /* 68 */ {"var68", "undefined"}, - /* 69 */ {"var69", "undefined"}, - /* 70 */ {"var70", "undefined"}, - /* 71 */ {"var71", "undefined"}, - /* 72 */ {"var72", "undefined"}, - /* 73 */ {"var73", "undefined"}, - /* 74 */ {"var74", "undefined"}, - /* 75 */ {"var75", "undefined"}, - /* 76 */ {"var76", "undefined"}, - /* 77 */ {"var77", "undefined"}, - /* 78 */ {"var78", "undefined"}, - /* 79 */ {"var79", "undefined"}, - /* 80 */ {"var80", "undefined"}, - /* 81 */ {"var81", "undefined"}, - /* 82 */ {"var82", "undefined"}, - /* 83 */ {"var83", "Net primary productivity [kg C m**-2 s**-1]"}, - /* 84 */ {"var84", "undefined"}, - /* 85 */ {"var85", "10m U wind over land [m s**-1]"}, - /* 86 */ {"var86", "10m V wind over land [m s**-1]"}, - /* 87 */ {"var87", "1.5m temperature over land [K]"}, - /* 88 */ {"var88", "1.5m dewpoint temperature over land [K]"}, - /* 89 */ {"var89", "Top incoming solar radiation [W m**-2 s]"}, - /* 90 */ {"var90", "Top outgoing solar radiation [W m**-2 s]"}, - /* 91 */ {"var91", "undefined"}, - /* 92 */ {"var92", "undefined"}, - /* 93 */ {"var93", "undefined"}, - /* 94 */ {"var94", "Mean sea surface temperature [K]"}, - /* 95 */ {"var95", "1.5m specific humidity [kg kg**-1]"}, - /* 96 */ {"var96", "undefined"}, - /* 97 */ {"var97", "undefined"}, - /* 98 */ {"var98", "Sea-ice thickness [m]"}, - /* 99 */ {"var99", "Liquid water potential temperature [K]"}, - /* 100 */ {"var100", "undefined"}, - /* 101 */ {"var101", "undefined"}, - /* 102 */ {"var102", "undefined"}, - /* 103 */ {"var103", "undefined"}, - /* 104 */ {"var104", "undefined"}, - /* 105 */ {"var105", "undefined"}, - /* 106 */ {"var106", "undefined"}, - /* 107 */ {"var107", "undefined"}, - /* 108 */ {"var108", "undefined"}, - /* 109 */ {"var109", "undefined"}, - /* 110 */ {"var110", "Ocean ice concentration [(0 - 1)]"}, - /* 111 */ {"var111", "Ocean mean ice depth [m]"}, - /* 112 */ {"var112", "undefined"}, - /* 113 */ {"var113", "undefined"}, - /* 114 */ {"var114", "undefined"}, - /* 115 */ {"var115", "undefined"}, - /* 116 */ {"var116", "undefined"}, - /* 117 */ {"var117", "undefined"}, - /* 118 */ {"var118", "undefined"}, - /* 119 */ {"var119", "undefined"}, - /* 120 */ {"var120", "undefined"}, - /* 121 */ {"var121", "undefined"}, - /* 122 */ {"var122", "undefined"}, - /* 123 */ {"var123", "undefined"}, - /* 124 */ {"var124", "undefined"}, - /* 125 */ {"var125", "undefined"}, - /* 126 */ {"var126", "undefined"}, - /* 127 */ {"var127", "undefined"}, - /* 128 */ {"var128", "undefined"}, - /* 129 */ {"var129", "undefined"}, - /* 130 */ {"var130", "undefined"}, - /* 131 */ {"var131", "undefined"}, - /* 132 */ {"var132", "undefined"}, - /* 133 */ {"var133", "undefined"}, - /* 134 */ {"var134", "undefined"}, - /* 135 */ {"var135", "undefined"}, - /* 136 */ {"var136", "undefined"}, - /* 137 */ {"var137", "undefined"}, - /* 138 */ {"var138", "undefined"}, - /* 139 */ {"var139", "Soil temperature layer 1 [K]"}, - /* 140 */ {"var140", "undefined"}, - /* 141 */ {"var141", "undefined"}, - /* 142 */ {"var142", "undefined"}, - /* 143 */ {"var143", "undefined"}, - /* 144 */ {"var144", "undefined"}, - /* 145 */ {"var145", "undefined"}, - /* 146 */ {"var146", "undefined"}, - /* 147 */ {"var147", "undefined"}, - /* 148 */ {"var148", "undefined"}, - /* 149 */ {"var149", "undefined"}, - /* 150 */ {"var150", "undefined"}, - /* 151 */ {"var151", "undefined"}, - /* 152 */ {"var152", "undefined"}, - /* 153 */ {"var153", "undefined"}, - /* 154 */ {"var154", "undefined"}, - /* 155 */ {"var155", "undefined"}, - /* 156 */ {"var156", "undefined"}, - /* 157 */ {"var157", "undefined"}, - /* 158 */ {"var158", "undefined"}, - /* 159 */ {"var159", "undefined"}, - /* 160 */ {"var160", "undefined"}, - /* 161 */ {"var161", "undefined"}, - /* 162 */ {"var162", "undefined"}, - /* 163 */ {"var163", "undefined"}, - /* 164 */ {"var164", "Average potential temperature in upper 293.4m [degrees C]"}, - /* 165 */ {"var165", "undefined"}, - /* 166 */ {"var166", "undefined"}, - /* 167 */ {"var167", "1.5m temperature [K]"}, - /* 168 */ {"var168", "1.5m dewpoint temperature [K]"}, - /* 169 */ {"var169", "undefined"}, - /* 170 */ {"var170", "Soil temperature layer 2 [K]"}, - /* 171 */ {"var171", "undefined"}, - /* 172 */ {"var172", "Fractional land mask [(0 - 1)]"}, - /* 173 */ {"var173", "undefined"}, - /* 174 */ {"var174", "undefined"}, - /* 175 */ {"var175", "Average salinity in upper 293.4m [psu]"}, - /* 176 */ {"var176", "undefined"}, - /* 177 */ {"var177", "undefined"}, - /* 178 */ {"var178", "undefined"}, - /* 179 */ {"var179", "undefined"}, - /* 180 */ {"var180", "undefined"}, - /* 181 */ {"var181", "undefined"}, - /* 182 */ {"var182", "undefined"}, - /* 183 */ {"var183", "Soil temperature layer 3 [K]"}, - /* 184 */ {"var184", "undefined"}, - /* 185 */ {"var185", "undefined"}, - /* 186 */ {"var186", "undefined"}, - /* 187 */ {"var187", "undefined"}, - /* 188 */ {"var188", "undefined"}, - /* 189 */ {"var189", "undefined"}, - /* 190 */ {"var190", "undefined"}, - /* 191 */ {"var191", "undefined"}, - /* 192 */ {"var192", "undefined"}, - /* 193 */ {"var193", "undefined"}, - /* 194 */ {"var194", "undefined"}, - /* 195 */ {"var195", "undefined"}, - /* 196 */ {"var196", "undefined"}, - /* 197 */ {"var197", "undefined"}, - /* 198 */ {"var198", "undefined"}, - /* 199 */ {"var199", "undefined"}, - /* 200 */ {"var200", "undefined"}, - /* 201 */ {"var201", "1.5m temperature - maximum over last 24 hours [K]"}, - /* 202 */ {"var202", "1.5m temperature - minimum over last 24 hours [K]"}, - /* 203 */ {"var203", "undefined"}, - /* 204 */ {"var204", "undefined"}, - /* 205 */ {"var205", "undefined"}, - /* 206 */ {"var206", "undefined"}, - /* 207 */ {"var207", "undefined"}, - /* 208 */ {"var208", "undefined"}, - /* 209 */ {"var209", "undefined"}, - /* 210 */ {"var210", "undefined"}, - /* 211 */ {"var211", "undefined"}, - /* 212 */ {"var212", "undefined"}, - /* 213 */ {"var213", "undefined"}, - /* 214 */ {"var214", "undefined"}, - /* 215 */ {"var215", "undefined"}, - /* 216 */ {"var216", "undefined"}, - /* 217 */ {"var217", "undefined"}, - /* 218 */ {"var218", "undefined"}, - /* 219 */ {"var219", "undefined"}, - /* 220 */ {"var220", "undefined"}, - /* 221 */ {"var221", "undefined"}, - /* 222 */ {"var222", "undefined"}, - /* 223 */ {"var223", "undefined"}, - /* 224 */ {"var224", "undefined"}, - /* 225 */ {"var225", "undefined"}, - /* 226 */ {"var226", "undefined"}, - /* 227 */ {"var227", "undefined"}, - /* 228 */ {"var228", "undefined"}, - /* 229 */ {"var229", "undefined"}, - /* 230 */ {"var230", "undefined"}, - /* 231 */ {"var231", "undefined"}, - /* 232 */ {"var232", "undefined"}, - /* 233 */ {"var233", "undefined"}, - /* 234 */ {"var234", "undefined"}, - /* 235 */ {"var235", "undefined"}, - /* 236 */ {"var236", "Soil temperature layer 4 [K]"}, - /* 237 */ {"var237", "undefined"}, - /* 238 */ {"var238", "undefined"}, - /* 239 */ {"var239", "undefined"}, - /* 240 */ {"var240", "undefined"}, - /* 241 */ {"var241", "undefined"}, - /* 242 */ {"var242", "undefined"}, - /* 243 */ {"var243", "undefined"}, - /* 244 */ {"var244", "undefined"}, - /* 245 */ {"var245", "undefined"}, - /* 246 */ {"var246", "undefined"}, - /* 247 */ {"var247", "undefined"}, - /* 248 */ {"var248", "undefined"}, - /* 249 */ {"var249", "undefined"}, - /* 250 */ {"var250", "undefined"}, - /* 251 */ {"var251", "undefined"}, - /* 252 */ {"var252", "undefined"}, - /* 253 */ {"var253", "undefined"}, - /* 254 */ {"var254", "undefined"}, - /* 255 */ {"var255", "Indicates a missing value []"}, -}; - -const struct ParmTable parm_table_ecmwf_180[256] = { - /* 0 */ {"var0", "undefined"}, - /* 1 */ {"var1", "undefined"}, - /* 2 */ {"var2", "undefined"}, - /* 3 */ {"var3", "undefined"}, - /* 4 */ {"var4", "undefined"}, - /* 5 */ {"var5", "undefined"}, - /* 6 */ {"var6", "undefined"}, - /* 7 */ {"var7", "undefined"}, - /* 8 */ {"var8", "undefined"}, - /* 9 */ {"var9", "undefined"}, - /* 10 */ {"var10", "undefined"}, - /* 11 */ {"var11", "undefined"}, - /* 12 */ {"var12", "undefined"}, - /* 13 */ {"var13", "undefined"}, - /* 14 */ {"var14", "undefined"}, - /* 15 */ {"var15", "undefined"}, - /* 16 */ {"var16", "undefined"}, - /* 17 */ {"var17", "undefined"}, - /* 18 */ {"var18", "undefined"}, - /* 19 */ {"var19", "undefined"}, - /* 20 */ {"var20", "undefined"}, - /* 21 */ {"var21", "undefined"}, - /* 22 */ {"var22", "undefined"}, - /* 23 */ {"var23", "undefined"}, - /* 24 */ {"var24", "undefined"}, - /* 25 */ {"var25", "undefined"}, - /* 26 */ {"var26", "undefined"}, - /* 27 */ {"var27", "undefined"}, - /* 28 */ {"var28", "undefined"}, - /* 29 */ {"var29", "undefined"}, - /* 30 */ {"var30", "undefined"}, - /* 31 */ {"var31", "undefined"}, - /* 32 */ {"var32", "undefined"}, - /* 33 */ {"var33", "undefined"}, - /* 34 */ {"var34", "undefined"}, - /* 35 */ {"var35", "undefined"}, - /* 36 */ {"var36", "undefined"}, - /* 37 */ {"var37", "undefined"}, - /* 38 */ {"var38", "undefined"}, - /* 39 */ {"var39", "undefined"}, - /* 40 */ {"var40", "undefined"}, - /* 41 */ {"var41", "undefined"}, - /* 42 */ {"var42", "undefined"}, - /* 43 */ {"var43", "undefined"}, - /* 44 */ {"var44", "undefined"}, - /* 45 */ {"var45", "undefined"}, - /* 46 */ {"var46", "undefined"}, - /* 47 */ {"var47", "undefined"}, - /* 48 */ {"var48", "undefined"}, - /* 49 */ {"var49", "undefined"}, - /* 50 */ {"var50", "undefined"}, - /* 51 */ {"var51", "undefined"}, - /* 52 */ {"var52", "undefined"}, - /* 53 */ {"var53", "undefined"}, - /* 54 */ {"var54", "undefined"}, - /* 55 */ {"var55", "undefined"}, - /* 56 */ {"var56", "undefined"}, - /* 57 */ {"var57", "undefined"}, - /* 58 */ {"var58", "undefined"}, - /* 59 */ {"var59", "undefined"}, - /* 60 */ {"var60", "undefined"}, - /* 61 */ {"var61", "undefined"}, - /* 62 */ {"var62", "undefined"}, - /* 63 */ {"var63", "undefined"}, - /* 64 */ {"var64", "undefined"}, - /* 65 */ {"var65", "undefined"}, - /* 66 */ {"var66", "undefined"}, - /* 67 */ {"var67", "undefined"}, - /* 68 */ {"var68", "undefined"}, - /* 69 */ {"var69", "undefined"}, - /* 70 */ {"var70", "undefined"}, - /* 71 */ {"var71", "undefined"}, - /* 72 */ {"var72", "undefined"}, - /* 73 */ {"var73", "undefined"}, - /* 74 */ {"var74", "undefined"}, - /* 75 */ {"var75", "undefined"}, - /* 76 */ {"var76", "undefined"}, - /* 77 */ {"var77", "undefined"}, - /* 78 */ {"var78", "undefined"}, - /* 79 */ {"var79", "undefined"}, - /* 80 */ {"var80", "undefined"}, - /* 81 */ {"var81", "undefined"}, - /* 82 */ {"var82", "undefined"}, - /* 83 */ {"var83", "undefined"}, - /* 84 */ {"var84", "undefined"}, - /* 85 */ {"var85", "undefined"}, - /* 86 */ {"var86", "undefined"}, - /* 87 */ {"var87", "undefined"}, - /* 88 */ {"var88", "undefined"}, - /* 89 */ {"var89", "undefined"}, - /* 90 */ {"var90", "undefined"}, - /* 91 */ {"var91", "undefined"}, - /* 92 */ {"var92", "undefined"}, - /* 93 */ {"var93", "undefined"}, - /* 94 */ {"var94", "undefined"}, - /* 95 */ {"var95", "undefined"}, - /* 96 */ {"var96", "undefined"}, - /* 97 */ {"var97", "undefined"}, - /* 98 */ {"var98", "undefined"}, - /* 99 */ {"var99", "undefined"}, - /* 100 */ {"var100", "undefined"}, - /* 101 */ {"var101", "undefined"}, - /* 102 */ {"var102", "undefined"}, - /* 103 */ {"var103", "undefined"}, - /* 104 */ {"var104", "undefined"}, - /* 105 */ {"var105", "undefined"}, - /* 106 */ {"var106", "undefined"}, - /* 107 */ {"var107", "undefined"}, - /* 108 */ {"var108", "undefined"}, - /* 109 */ {"var109", "undefined"}, - /* 110 */ {"var110", "undefined"}, - /* 111 */ {"var111", "undefined"}, - /* 112 */ {"var112", "undefined"}, - /* 113 */ {"var113", "undefined"}, - /* 114 */ {"var114", "undefined"}, - /* 115 */ {"var115", "undefined"}, - /* 116 */ {"var116", "undefined"}, - /* 117 */ {"var117", "undefined"}, - /* 118 */ {"var118", "undefined"}, - /* 119 */ {"var119", "undefined"}, - /* 120 */ {"var120", "undefined"}, - /* 121 */ {"var121", "undefined"}, - /* 122 */ {"var122", "undefined"}, - /* 123 */ {"var123", "undefined"}, - /* 124 */ {"var124", "undefined"}, - /* 125 */ {"var125", "undefined"}, - /* 126 */ {"var126", "undefined"}, - /* 127 */ {"var127", "undefined"}, - /* 128 */ {"var128", "undefined"}, - /* 129 */ {"Z", "Geopotential [m**2 s**-2]"}, - /* 130 */ {"T", "Temperature [K]"}, - /* 131 */ {"U", "U velocity [m s**-1]"}, - /* 132 */ {"V", "V velocity [m s**-1]"}, - /* 133 */ {"Q", "Specific humidity [kg kg**-1]"}, - /* 134 */ {"SP", "Surface pressure [Pa]"}, - /* 135 */ {"var135", "undefined"}, - /* 136 */ {"var136", "undefined"}, - /* 137 */ {"TCWV", "Total column water vapour [kg m**-2]"}, - /* 138 */ {"VO", "Vorticity (relative) [s**-1]"}, - /* 139 */ {"var139", "undefined"}, - /* 140 */ {"var140", "undefined"}, - /* 141 */ {"SD", "Snow depth [m of water equivalent]"}, - /* 142 */ {"LSP", "Large-scale precipitation [m]"}, - /* 143 */ {"CP", "Convective precipitation [m]"}, - /* 144 */ {"SF", "Snowfall [m of water equivalent]"}, - /* 145 */ {"var145", "undefined"}, - /* 146 */ {"SSHF", "Surface sensible heat flux [W m**-2 s]"}, - /* 147 */ {"SLHF", "Surface latent heat flux [W m**-2 s]"}, - /* 148 */ {"var148", "undefined"}, - /* 149 */ {"TSW", "Total soil wetness [m]"}, - /* 150 */ {"var150", "undefined"}, - /* 151 */ {"MSL", "Mean sea level pressure [Pa]"}, - /* 152 */ {"var152", "undefined"}, - /* 153 */ {"var153", "undefined"}, - /* 154 */ {"var154", "undefined"}, - /* 155 */ {"D", "Divergence [s**-1]"}, - /* 156 */ {"var156", "undefined"}, - /* 157 */ {"var157", "undefined"}, - /* 158 */ {"var158", "undefined"}, - /* 159 */ {"var159", "undefined"}, - /* 160 */ {"var160", "undefined"}, - /* 161 */ {"var161", "undefined"}, - /* 162 */ {"var162", "undefined"}, - /* 163 */ {"var163", "undefined"}, - /* 164 */ {"TCC", "Total cloud cover [(0 - 1)]"}, - /* 165 */ {"10U", "10 metre U wind component [m s**-1]"}, - /* 166 */ {"10V", "10 metre V wind component [m s**-1]"}, - /* 167 */ {"2T", "2 metre temperature [K]"}, - /* 168 */ {"2D", "2 metre dewpoint temperature [K]"}, - /* 169 */ {"var169", "undefined"}, - /* 170 */ {"var170", "undefined"}, - /* 171 */ {"var171", "undefined"}, - /* 172 */ {"LSM", "Land-sea mask [(0 - 1)]"}, - /* 173 */ {"var173", "undefined"}, - /* 174 */ {"var174", "undefined"}, - /* 175 */ {"var175", "undefined"}, - /* 176 */ {"SSR", "Surface solar radiation [J m**-2 s]"}, - /* 177 */ {"STR", "Surface thermal radiation [J m**-2 s]"}, - /* 178 */ {"TSR", "Top solar radiation [J m**-2 s]"}, - /* 179 */ {"TTR", "Top thermal radiation [J m**-2 s]"}, - /* 180 */ {"EWSS", "East-West surface stress [N m**-2 s]"}, - /* 181 */ {"NSSS", "North-South surface stress [N m**-2 s]"}, - /* 182 */ {"E", "Evaporation [m of water]"}, - /* 183 */ {"var183", "undefined"}, - /* 184 */ {"var184", "undefined"}, - /* 185 */ {"var185", "undefined"}, - /* 186 */ {"var186", "undefined"}, - /* 187 */ {"var187", "undefined"}, - /* 188 */ {"var188", "undefined"}, - /* 189 */ {"var189", "undefined"}, - /* 190 */ {"var190", "undefined"}, - /* 191 */ {"var191", "undefined"}, - /* 192 */ {"var192", "undefined"}, - /* 193 */ {"var193", "undefined"}, - /* 194 */ {"var194", "undefined"}, - /* 195 */ {"var195", "undefined"}, - /* 196 */ {"var196", "undefined"}, - /* 197 */ {"var197", "undefined"}, - /* 198 */ {"var198", "undefined"}, - /* 199 */ {"var199", "undefined"}, - /* 200 */ {"var200", "undefined"}, - /* 201 */ {"var201", "undefined"}, - /* 202 */ {"var202", "undefined"}, - /* 203 */ {"var203", "undefined"}, - /* 204 */ {"var204", "undefined"}, - /* 205 */ {"RO", "Runoff [m]"}, - /* 206 */ {"var206", "undefined"}, - /* 207 */ {"var207", "undefined"}, - /* 208 */ {"var208", "undefined"}, - /* 209 */ {"var209", "undefined"}, - /* 210 */ {"var210", "undefined"}, - /* 211 */ {"var211", "undefined"}, - /* 212 */ {"var212", "undefined"}, - /* 213 */ {"var213", "undefined"}, - /* 214 */ {"var214", "undefined"}, - /* 215 */ {"var215", "undefined"}, - /* 216 */ {"var216", "undefined"}, - /* 217 */ {"var217", "undefined"}, - /* 218 */ {"var218", "undefined"}, - /* 219 */ {"var219", "undefined"}, - /* 220 */ {"var220", "undefined"}, - /* 221 */ {"var221", "undefined"}, - /* 222 */ {"var222", "undefined"}, - /* 223 */ {"var223", "undefined"}, - /* 224 */ {"var224", "undefined"}, - /* 225 */ {"var225", "undefined"}, - /* 226 */ {"var226", "undefined"}, - /* 227 */ {"var227", "undefined"}, - /* 228 */ {"var228", "undefined"}, - /* 229 */ {"var229", "undefined"}, - /* 230 */ {"var230", "undefined"}, - /* 231 */ {"var231", "undefined"}, - /* 232 */ {"var232", "undefined"}, - /* 233 */ {"var233", "undefined"}, - /* 234 */ {"var234", "undefined"}, - /* 235 */ {"var235", "undefined"}, - /* 236 */ {"var236", "undefined"}, - /* 237 */ {"var237", "undefined"}, - /* 238 */ {"var238", "undefined"}, - /* 239 */ {"var239", "undefined"}, - /* 240 */ {"var240", "undefined"}, - /* 241 */ {"var241", "undefined"}, - /* 242 */ {"var242", "undefined"}, - /* 243 */ {"var243", "undefined"}, - /* 244 */ {"var244", "undefined"}, - /* 245 */ {"var245", "undefined"}, - /* 246 */ {"var246", "undefined"}, - /* 247 */ {"var247", "undefined"}, - /* 248 */ {"var248", "undefined"}, - /* 249 */ {"var249", "undefined"}, - /* 250 */ {"var250", "undefined"}, - /* 251 */ {"var251", "undefined"}, - /* 252 */ {"var252", "undefined"}, - /* 253 */ {"var253", "undefined"}, - /* 254 */ {"var254", "undefined"}, - /* 255 */ {"var255", "Indicates a missing value []"}, -}; - -const struct ParmTable parm_table_ecmwf_190[256] = { - /* 0 */ {"var0", "undefined"}, - /* 1 */ {"var1", "undefined"}, - /* 2 */ {"var2", "undefined"}, - /* 3 */ {"var3", "undefined"}, - /* 4 */ {"var4", "undefined"}, - /* 5 */ {"var5", "undefined"}, - /* 6 */ {"var6", "undefined"}, - /* 7 */ {"var7", "undefined"}, - /* 8 */ {"var8", "undefined"}, - /* 9 */ {"var9", "undefined"}, - /* 10 */ {"var10", "undefined"}, - /* 11 */ {"var11", "undefined"}, - /* 12 */ {"var12", "undefined"}, - /* 13 */ {"var13", "undefined"}, - /* 14 */ {"var14", "undefined"}, - /* 15 */ {"var15", "undefined"}, - /* 16 */ {"var16", "undefined"}, - /* 17 */ {"var17", "undefined"}, - /* 18 */ {"var18", "undefined"}, - /* 19 */ {"var19", "undefined"}, - /* 20 */ {"var20", "undefined"}, - /* 21 */ {"var21", "undefined"}, - /* 22 */ {"var22", "undefined"}, - /* 23 */ {"var23", "undefined"}, - /* 24 */ {"var24", "undefined"}, - /* 25 */ {"var25", "undefined"}, - /* 26 */ {"var26", "undefined"}, - /* 27 */ {"var27", "undefined"}, - /* 28 */ {"var28", "undefined"}, - /* 29 */ {"var29", "undefined"}, - /* 30 */ {"var30", "undefined"}, - /* 31 */ {"var31", "undefined"}, - /* 32 */ {"var32", "undefined"}, - /* 33 */ {"var33", "undefined"}, - /* 34 */ {"var34", "undefined"}, - /* 35 */ {"var35", "undefined"}, - /* 36 */ {"var36", "undefined"}, - /* 37 */ {"var37", "undefined"}, - /* 38 */ {"var38", "undefined"}, - /* 39 */ {"var39", "undefined"}, - /* 40 */ {"var40", "undefined"}, - /* 41 */ {"var41", "undefined"}, - /* 42 */ {"var42", "undefined"}, - /* 43 */ {"var43", "undefined"}, - /* 44 */ {"var44", "undefined"}, - /* 45 */ {"var45", "undefined"}, - /* 46 */ {"var46", "undefined"}, - /* 47 */ {"var47", "undefined"}, - /* 48 */ {"var48", "undefined"}, - /* 49 */ {"var49", "undefined"}, - /* 50 */ {"var50", "undefined"}, - /* 51 */ {"var51", "undefined"}, - /* 52 */ {"var52", "undefined"}, - /* 53 */ {"var53", "undefined"}, - /* 54 */ {"var54", "undefined"}, - /* 55 */ {"var55", "undefined"}, - /* 56 */ {"var56", "undefined"}, - /* 57 */ {"var57", "undefined"}, - /* 58 */ {"var58", "undefined"}, - /* 59 */ {"var59", "undefined"}, - /* 60 */ {"var60", "undefined"}, - /* 61 */ {"var61", "undefined"}, - /* 62 */ {"var62", "undefined"}, - /* 63 */ {"var63", "undefined"}, - /* 64 */ {"var64", "undefined"}, - /* 65 */ {"var65", "undefined"}, - /* 66 */ {"var66", "undefined"}, - /* 67 */ {"var67", "undefined"}, - /* 68 */ {"var68", "undefined"}, - /* 69 */ {"var69", "undefined"}, - /* 70 */ {"var70", "undefined"}, - /* 71 */ {"var71", "undefined"}, - /* 72 */ {"var72", "undefined"}, - /* 73 */ {"var73", "undefined"}, - /* 74 */ {"var74", "undefined"}, - /* 75 */ {"var75", "undefined"}, - /* 76 */ {"var76", "undefined"}, - /* 77 */ {"var77", "undefined"}, - /* 78 */ {"var78", "undefined"}, - /* 79 */ {"var79", "undefined"}, - /* 80 */ {"var80", "undefined"}, - /* 81 */ {"var81", "undefined"}, - /* 82 */ {"var82", "undefined"}, - /* 83 */ {"var83", "undefined"}, - /* 84 */ {"var84", "undefined"}, - /* 85 */ {"var85", "undefined"}, - /* 86 */ {"var86", "undefined"}, - /* 87 */ {"var87", "undefined"}, - /* 88 */ {"var88", "undefined"}, - /* 89 */ {"var89", "undefined"}, - /* 90 */ {"var90", "undefined"}, - /* 91 */ {"var91", "undefined"}, - /* 92 */ {"var92", "undefined"}, - /* 93 */ {"var93", "undefined"}, - /* 94 */ {"var94", "undefined"}, - /* 95 */ {"var95", "undefined"}, - /* 96 */ {"var96", "undefined"}, - /* 97 */ {"var97", "undefined"}, - /* 98 */ {"var98", "undefined"}, - /* 99 */ {"var99", "undefined"}, - /* 100 */ {"var100", "undefined"}, - /* 101 */ {"var101", "undefined"}, - /* 102 */ {"var102", "undefined"}, - /* 103 */ {"var103", "undefined"}, - /* 104 */ {"var104", "undefined"}, - /* 105 */ {"var105", "undefined"}, - /* 106 */ {"var106", "undefined"}, - /* 107 */ {"var107", "undefined"}, - /* 108 */ {"var108", "undefined"}, - /* 109 */ {"var109", "undefined"}, - /* 110 */ {"var110", "undefined"}, - /* 111 */ {"var111", "undefined"}, - /* 112 */ {"var112", "undefined"}, - /* 113 */ {"var113", "undefined"}, - /* 114 */ {"var114", "undefined"}, - /* 115 */ {"var115", "undefined"}, - /* 116 */ {"var116", "undefined"}, - /* 117 */ {"var117", "undefined"}, - /* 118 */ {"var118", "undefined"}, - /* 119 */ {"var119", "undefined"}, - /* 120 */ {"var120", "undefined"}, - /* 121 */ {"var121", "undefined"}, - /* 122 */ {"var122", "undefined"}, - /* 123 */ {"var123", "undefined"}, - /* 124 */ {"var124", "undefined"}, - /* 125 */ {"var125", "undefined"}, - /* 126 */ {"var126", "undefined"}, - /* 127 */ {"var127", "undefined"}, - /* 128 */ {"var128", "undefined"}, - /* 129 */ {"Z", "Geopotential [m**2 s**-2]"}, - /* 130 */ {"T", "Temperature [K]"}, - /* 131 */ {"U", "U velocity [m s**-1]"}, - /* 132 */ {"V", "V velocity [m s**-1]"}, - /* 133 */ {"Q", "Specific humidity [kg kg**-1]"}, - /* 134 */ {"var134", "undefined"}, - /* 135 */ {"var135", "undefined"}, - /* 136 */ {"var136", "undefined"}, - /* 137 */ {"var137", "undefined"}, - /* 138 */ {"var138", "undefined"}, - /* 139 */ {"STL1", "Soil temperature level 1 [K]"}, - /* 140 */ {"var140", "undefined"}, - /* 141 */ {"SD", "Snow depth [m of water]"}, - /* 142 */ {"var142", "undefined"}, - /* 143 */ {"var143", "undefined"}, - /* 144 */ {"var144", "undefined"}, - /* 145 */ {"var145", "undefined"}, - /* 146 */ {"SSHF", "Surface sensible heat flux [W m**-2 s]"}, - /* 147 */ {"SLHF", "Surface latent heat flux [W m**-2 s]"}, - /* 148 */ {"var148", "undefined"}, - /* 149 */ {"var149", "undefined"}, - /* 150 */ {"var150", "undefined"}, - /* 151 */ {"MSL", "Mean sea level pressure [Pa]"}, - /* 152 */ {"var152", "undefined"}, - /* 153 */ {"var153", "undefined"}, - /* 154 */ {"var154", "undefined"}, - /* 155 */ {"var155", "undefined"}, - /* 156 */ {"var156", "undefined"}, - /* 157 */ {"var157", "undefined"}, - /* 158 */ {"var158", "undefined"}, - /* 159 */ {"var159", "undefined"}, - /* 160 */ {"var160", "undefined"}, - /* 161 */ {"var161", "undefined"}, - /* 162 */ {"var162", "undefined"}, - /* 163 */ {"var163", "undefined"}, - /* 164 */ {"TCC", "Total cloud cover [(0 - 1)]"}, - /* 165 */ {"10U", "10 metre U wind component [m s**-1]"}, - /* 166 */ {"10V", "10 metre V wind component [m s**-1]"}, - /* 167 */ {"2T", "2 metre temperature [K]"}, - /* 168 */ {"2D", "2 metre dewpoint temperature [K]"}, - /* 169 */ {"SSRD", "Downward surface solar radiation [W m**-2 s (W m**-2 for monthly means)]"}, - /* 170 */ {"CAP", "Field capacity [(0 - 1)]"}, - /* 171 */ {"WILT", "Wilting point [(0 - 1)]"}, - /* 172 */ {"LSM", "Land-sea mask [(0 - 1)]"}, - /* 173 */ {"SR", "Roughness length [(0 - 1)]"}, - /* 174 */ {"AL", "Albedo [(0 - 1)]"}, - /* 175 */ {"STRD", "Downward surface long wave radiation [W m**-2 s (W m**-2 for monthly means)]"}, - /* 176 */ {"SSR", "Surface net solar radiation [W m**-2 s (W m**-2 for monthly means)]"}, - /* 177 */ {"STR", "Surface net long wave radiation [W m**-2 s (W m**-2 for monthly means)]"}, - /* 178 */ {"TSR", "Top net solar radiation [W m**-2 s (W m**-2 for monthly means)]"}, - /* 179 */ {"TTR", "Top net long wave radiation [W m**-2 s (W m**-2 for monthly means)]"}, - /* 180 */ {"var180", "undefined"}, - /* 181 */ {"var181", "undefined"}, - /* 182 */ {"E", "Evaporation [m (m s**-1 for monthly means)]"}, - /* 183 */ {"var183", "undefined"}, - /* 184 */ {"var184", "undefined"}, - /* 185 */ {"var185", "undefined"}, - /* 186 */ {"var186", "undefined"}, - /* 187 */ {"var187", "undefined"}, - /* 188 */ {"var188", "undefined"}, - /* 189 */ {"var189", "undefined"}, - /* 190 */ {"var190", "undefined"}, - /* 191 */ {"var191", "undefined"}, - /* 192 */ {"var192", "undefined"}, - /* 193 */ {"var193", "undefined"}, - /* 194 */ {"var194", "undefined"}, - /* 195 */ {"var195", "undefined"}, - /* 196 */ {"var196", "undefined"}, - /* 197 */ {"var197", "undefined"}, - /* 198 */ {"var198", "undefined"}, - /* 199 */ {"var199", "undefined"}, - /* 200 */ {"var200", "undefined"}, - /* 201 */ {"MX2T", "Maximum 2 metre temperature [K]"}, - /* 202 */ {"MN2T", "Minimum 2 metre temperature [K]"}, - /* 203 */ {"var203", "undefined"}, - /* 204 */ {"var204", "undefined"}, - /* 205 */ {"var205", "undefined"}, - /* 206 */ {"var206", "undefined"}, - /* 207 */ {"var207", "undefined"}, - /* 208 */ {"var208", "undefined"}, - /* 209 */ {"var209", "undefined"}, - /* 210 */ {"var210", "undefined"}, - /* 211 */ {"var211", "undefined"}, - /* 212 */ {"var212", "undefined"}, - /* 213 */ {"var213", "undefined"}, - /* 214 */ {"var214", "undefined"}, - /* 215 */ {"var215", "undefined"}, - /* 216 */ {"var216", "undefined"}, - /* 217 */ {"var217", "undefined"}, - /* 218 */ {"var218", "undefined"}, - /* 219 */ {"var219", "undefined"}, - /* 220 */ {"var220", "undefined"}, - /* 221 */ {"var221", "undefined"}, - /* 222 */ {"var222", "undefined"}, - /* 223 */ {"var223", "undefined"}, - /* 224 */ {"var224", "undefined"}, - /* 225 */ {"var225", "undefined"}, - /* 226 */ {"var226", "undefined"}, - /* 227 */ {"var227", "undefined"}, - /* 228 */ {"TP", "Total precipitation [m (m s**-1 for monthly means)]"}, - /* 229 */ {"TSM", "Total soil moisture [m**3 m**-3]"}, - /* 230 */ {"var230", "undefined"}, - /* 231 */ {"var231", "undefined"}, - /* 232 */ {"var232", "undefined"}, - /* 233 */ {"var233", "undefined"}, - /* 234 */ {"var234", "undefined"}, - /* 235 */ {"var235", "undefined"}, - /* 236 */ {"var236", "undefined"}, - /* 237 */ {"var237", "undefined"}, - /* 238 */ {"var238", "undefined"}, - /* 239 */ {"var239", "undefined"}, - /* 240 */ {"var240", "undefined"}, - /* 241 */ {"var241", "undefined"}, - /* 242 */ {"var242", "undefined"}, - /* 243 */ {"var243", "undefined"}, - /* 244 */ {"var244", "undefined"}, - /* 245 */ {"var245", "undefined"}, - /* 246 */ {"var246", "undefined"}, - /* 247 */ {"var247", "undefined"}, - /* 248 */ {"var248", "undefined"}, - /* 249 */ {"var249", "undefined"}, - /* 250 */ {"var250", "undefined"}, - /* 251 */ {"var251", "undefined"}, - /* 252 */ {"var252", "undefined"}, - /* 253 */ {"var253", "undefined"}, - /* 254 */ {"var254", "undefined"}, - /* 255 */ {"var255", " []"}, -}; - -const struct ParmTable parm_table_ecmwf_200[256] = { - /* 0 */ {"var0", "undefined"}, - /* 1 */ {"STRF", "Stream function [m**2 s**-1]"}, - /* 2 */ {"VPOT", "Velocity potential [m**2 s**-1]"}, - /* 3 */ {"PT", "Potential temperature [K]"}, - /* 4 */ {"EQPT", "Equivalent potential temperature [K]"}, - /* 5 */ {"SEPT", "Saturated equivalent potential temperature [K]"}, - /* 6 */ {"var6", "undefined"}, - /* 7 */ {"var7", "undefined"}, - /* 8 */ {"var8", "undefined"}, - /* 9 */ {"var9", "undefined"}, - /* 10 */ {"var10", "undefined"}, - /* 11 */ {"UDVW", "U component of divergent wind [m s**-1]"}, - /* 12 */ {"VDVW", "V component of divergent wind [m s**-1]"}, - /* 13 */ {"URTW", "U component of rotational wind [m s**-1]"}, - /* 14 */ {"VRTW", "V component of rotational wind [m s**-1]"}, - /* 15 */ {"var15", "undefined"}, - /* 16 */ {"var16", "undefined"}, - /* 17 */ {"var17", "undefined"}, - /* 18 */ {"var18", "undefined"}, - /* 19 */ {"var19", "undefined"}, - /* 20 */ {"var20", "undefined"}, - /* 21 */ {"UCTP", "Unbalanced component of temperature [K]"}, - /* 22 */ {"UCLN", "Unbalanced component of logarithm of surface pressure []"}, - /* 23 */ {"UCDV", "Unbalanced component of divergence [s**-1]"}, - /* 24 */ {"var24", "Reserved for future unbalanced components []"}, - /* 25 */ {"var25", "Reserved for future unbalanced components []"}, - /* 26 */ {"CL", "Lake cover [(0 - 1)]"}, - /* 27 */ {"CVL", "Low vegetation cover [(0 - 1)]"}, - /* 28 */ {"CVH", "High vegetation cover [(0 - 1)]"}, - /* 29 */ {"TVL", "Type of low vegetation []"}, - /* 30 */ {"TVH", "Type of high vegetation []"}, - /* 31 */ {"CI", "Sea-ice cover [(0 - 1)]"}, - /* 32 */ {"ASN", "Snow albedo [(0 - 1)]"}, - /* 33 */ {"RSN", "Snow density [kg m**-3]"}, - /* 34 */ {"SSTK", "Sea surface temperature [K]"}, - /* 35 */ {"ISTL1", "Ice surface temperature layer 1 [K]"}, - /* 36 */ {"ISTL2", "Ice surface temperature layer 2 [K]"}, - /* 37 */ {"ISTL3", "Ice surface temperature layer 3 [K]"}, - /* 38 */ {"ISTL4", "Ice surface temperature layer 4 [K]"}, - /* 39 */ {"SWVL1", "Volumetric soil water layer 1 [m**3 m**-3]"}, - /* 40 */ {"SWVL2", "Volumetric soil water layer 2 [m**3 m**-3]"}, - /* 41 */ {"SWVL3", "Volumetric soil water layer 3 [m**3 m**-3]"}, - /* 42 */ {"SWVL4", "Volumetric soil water layer 4 [m**3 m**-3]"}, - /* 43 */ {"SLT", "Soil type []"}, - /* 44 */ {"ES", "Snow evaporation [m of water]"}, - /* 45 */ {"SMLT", "Snowmelt [m of water]"}, - /* 46 */ {"SDUR", "Solar duration [s]"}, - /* 47 */ {"DSRP", "Direct solar radiation [w m**-2]"}, - /* 48 */ {"MAGSS", "Magnitude of surface stress [N m**-2 s]"}, - /* 49 */ {"10FG", "10 metre wind gust [m s**-1]"}, - /* 50 */ {"LSPF", "Large-scale precipitation fraction [s]"}, - /* 51 */ {"MX2T24", "Maximum 2 metre temperature [K]"}, - /* 52 */ {"MN2T24", "Minimum 2 metre temperature [K]"}, - /* 53 */ {"MONT", "Montgomery potential [m**2 s**-2]"}, - /* 54 */ {"PRES", "Pressure [Pa]"}, - /* 55 */ {"MEAN2T24", "Mean 2 metre temperature in past 24 hours [K]"}, - /* 56 */ {"MN2D24", "Mean 2 metre dewpoint temperature in past 24 hours [K]"}, - /* 57 */ {"UVB", "Downward UV radiation at the surface [w m**-2 s]"}, - /* 58 */ {"PAR", "Photosynthetically active radiation at the surface [w m**-2 s]"}, - /* 59 */ {"CAPE", "Convective available potential energy [J kg**-1]"}, - /* 60 */ {"PV", "Potential vorticity [K m**2 kg**-1 s**-1]"}, - /* 61 */ {"TPO", "Total precipitation from observations [Millimetres*100 + number of stations]"}, - /* 62 */ {"OBCT", "Observation count []"}, - /* 63 */ {"var63", "Start time for skin temperature difference [s]"}, - /* 64 */ {"var64", "Finish time for skin temperature difference [s]"}, - /* 65 */ {"var65", "Skin temperature difference [K]"}, - /* 66 */ {"var66", "Leaf area index, low vegetation [m**2 / m**2]"}, - /* 67 */ {"var67", "Leaf area index, high vegetation [m**2 / m**2]"}, - /* 68 */ {"var68", "Minimum stomatal resistance, low vegetation [s m**-1]"}, - /* 69 */ {"var69", "Minimum stomatal resistance, high vegetation [s m**-1]"}, - /* 70 */ {"var70", "Biome cover, low vegetation [(0 - 1)]"}, - /* 71 */ {"var71", "Biome cover, high vegetation [(0 - 1)]"}, - /* 72 */ {"var72", "undefined"}, - /* 73 */ {"var73", "undefined"}, - /* 74 */ {"var74", "undefined"}, - /* 75 */ {"var75", "undefined"}, - /* 76 */ {"var76", "undefined"}, - /* 77 */ {"var77", "undefined"}, - /* 78 */ {"var78", "Total column liquid water [kg m**-2]"}, - /* 79 */ {"var79", "Total column ice water [kg m**-2]"}, - /* 80 */ {"var80", "Experimental product []"}, - /* 81 */ {"var81", "Experimental product []"}, - /* 82 */ {"var82", "Experimental product []"}, - /* 83 */ {"var83", "Experimental product []"}, - /* 84 */ {"var84", "Experimental product []"}, - /* 85 */ {"var85", "Experimental product []"}, - /* 86 */ {"var86", "Experimental product []"}, - /* 87 */ {"var87", "Experimental product []"}, - /* 88 */ {"var88", "Experimental product []"}, - /* 89 */ {"var89", "Experimental product []"}, - /* 90 */ {"var90", "Experimental product []"}, - /* 91 */ {"var91", "Experimental product []"}, - /* 92 */ {"var92", "Experimental product []"}, - /* 93 */ {"var93", "Experimental product []"}, - /* 94 */ {"var94", "Experimental product []"}, - /* 95 */ {"var95", "Experimental product []"}, - /* 96 */ {"var96", "Experimental product []"}, - /* 97 */ {"var97", "Experimental product []"}, - /* 98 */ {"var98", "Experimental product []"}, - /* 99 */ {"var99", "Experimental product []"}, - /* 100 */ {"var100", "Experimental product []"}, - /* 101 */ {"var101", "Experimental product []"}, - /* 102 */ {"var102", "Experimental product []"}, - /* 103 */ {"var103", "Experimental product []"}, - /* 104 */ {"var104", "Experimental product []"}, - /* 105 */ {"var105", "Experimental product []"}, - /* 106 */ {"var106", "Experimental product []"}, - /* 107 */ {"var107", "Experimental product []"}, - /* 108 */ {"var108", "Experimental product []"}, - /* 109 */ {"var109", "Experimental product []"}, - /* 110 */ {"var110", "Experimental product []"}, - /* 111 */ {"var111", "Experimental product []"}, - /* 112 */ {"var112", "Experimental product []"}, - /* 113 */ {"var113", "Experimental product []"}, - /* 114 */ {"var114", "Experimental product []"}, - /* 115 */ {"var115", "Experimental product []"}, - /* 116 */ {"var116", "Experimental product []"}, - /* 117 */ {"var117", "Experimental product []"}, - /* 118 */ {"var118", "Experimental product []"}, - /* 119 */ {"var119", "Experimental product []"}, - /* 120 */ {"var120", "Experimental product []"}, - /* 121 */ {"MX2T6", "Maximum temperature at 2 metres [K]"}, - /* 122 */ {"MN2T6", "Minimum temperature at 2 metres [K]"}, - /* 123 */ {"10FG6", "10 metre wind gust in the past 6 hours [m s**-1]"}, - /* 124 */ {"var124", "undefined"}, - /* 125 */ {"var125", "Vertically integrated total energy [J m**-2]"}, - /* 126 */ {"var126", "Generic parameter for sensitive area prediction [Various]"}, - /* 127 */ {"AT", "Atmospheric tide []"}, - /* 128 */ {"BV", "Budget values []"}, - /* 129 */ {"Z", "Geopotential [m**2 s**-2]"}, - /* 130 */ {"T", "Temperature [K]"}, - /* 131 */ {"U", "U velocity [m s**-1]"}, - /* 132 */ {"V", "V velocity [m s**-1]"}, - /* 133 */ {"Q", "Specific humidity [kg kg**-1]"}, - /* 134 */ {"SP", "Surface pressure [Pa]"}, - /* 135 */ {"W", "Vertical velocity [Pa s**-1]"}, - /* 136 */ {"TCW", "Total column water [kg m**-2]"}, - /* 137 */ {"TCWV", "Total column water vapour [kg m**-2]"}, - /* 138 */ {"VO", "Vorticity (relative) [s**-1]"}, - /* 139 */ {"STL1", "Soil temperature level 1 [K]"}, - /* 140 */ {"SWL1", "Soil wetness level 1 [m of water]"}, - /* 141 */ {"SD", "Snow depth [m of water equivalent]"}, - /* 142 */ {"LSP", "Stratiform precipitation (Large-scale precipitation) [m]"}, - /* 143 */ {"CP", "Convective precipitation [m]"}, - /* 144 */ {"SF", "Snowfall (convective + stratiform) [m of water equivalent]"}, - /* 145 */ {"BLD", "Boundary layer dissipation [W m**-2 s]"}, - /* 146 */ {"SSHF", "Surface sensible heat flux [W m**-2 s]"}, - /* 147 */ {"SLHF", "Surface latent heat flux [W m**-2 s]"}, - /* 148 */ {"CHNK", "Charnock []"}, - /* 149 */ {"SNR", "Surface net radiation [W m**-2 s]"}, - /* 150 */ {"TNR", "Top net radiation []"}, - /* 151 */ {"MSL", "Mean sea level pressure [Pa]"}, - /* 152 */ {"LNSP", "Logarithm of surface pressure []"}, - /* 153 */ {"SWHR", "Short-wave heating rate [K]"}, - /* 154 */ {"LWHR", "Long-wave heating rate [K]"}, - /* 155 */ {"D", "Divergence [s**-1]"}, - /* 156 */ {"GH", "Height [m]"}, - /* 157 */ {"R", "Relative humidity [%]"}, - /* 158 */ {"TSP", "Tendency of surface pressure [Pa s**-1]"}, - /* 159 */ {"BLH", "Boundary layer height [m]"}, - /* 160 */ {"SDOR", "Standard deviation of orography []"}, - /* 161 */ {"ISOR", "Anisotropy of sub-gridscale orography []"}, - /* 162 */ {"ANOR", "Angle of sub-gridscale orography [rad]"}, - /* 163 */ {"SLOR", "Slope of sub-gridscale orography []"}, - /* 164 */ {"TCC", "Total cloud cover [(0 - 1)]"}, - /* 165 */ {"10U", "10 metre U wind component [m s**-1]"}, - /* 166 */ {"10V", "10 metre V wind component [m s**-1]"}, - /* 167 */ {"2T", "2 metre temperature [K]"}, - /* 168 */ {"2D", "2 metre dewpoint temperature [K]"}, - /* 169 */ {"SSRD", "Surface solar radiation downwards [W m**-2 s]"}, - /* 170 */ {"STL2", "Soil temperature level 2 [K]"}, - /* 171 */ {"SWL2", "Soil wetness level 2 [m of water]"}, - /* 172 */ {"LSM", "Land-sea mask [(0 - 1)]"}, - /* 173 */ {"SR", "Surface roughness [m]"}, - /* 174 */ {"AL", "Albedo [(0 - 1)]"}, - /* 175 */ {"STRD", "Surface thermal radiation downwards [W m**-2 s]"}, - /* 176 */ {"SSR", "Surface solar radiation [W m**-2 s]"}, - /* 177 */ {"STR", "Surface thermal radiation [W m**-2 s]"}, - /* 178 */ {"TSR", "Top solar radiation [W m**-2 s]"}, - /* 179 */ {"TTR", "Top thermal radiation [W m**-2 s]"}, - /* 180 */ {"EWSS", "East-West surface stress [N m**-2 s]"}, - /* 181 */ {"NSSS", "North-South surface stress [N m**-2 s]"}, - /* 182 */ {"E", "Evaporation [m of water]"}, - /* 183 */ {"STL3", "Soil temperature level 3 [K]"}, - /* 184 */ {"SWL3", "Soil wetness level 3 [m of water]"}, - /* 185 */ {"CCC", "Convective cloud cover [(0 - 1)]"}, - /* 186 */ {"LCC", "Low cloud cover [(0 - 1)]"}, - /* 187 */ {"MCC", "Medium cloud cover [(0 - 1)]"}, - /* 188 */ {"HCC", "High cloud cover [(0 - 1)]"}, - /* 189 */ {"SUND", "Sunshine duration [s]"}, - /* 190 */ {"EWOV", "East-West component of sub-gridscale orographic variance [m**2]"}, - /* 191 */ {"NSOV", "North-South component of sub-gridscale orographic variance [m**2]"}, - /* 192 */ {"NWOV", "North-West/South-East component of sub-gridscale orographic variance [m**2]"}, - /* 193 */ {"NEOV", "North-East/South-West component of sub-gridscale orographic variance [m**2]"}, - /* 194 */ {"BTMP", "Brightness temperature [K]"}, - /* 195 */ {"LGWS", "Latitudinal component of gravity wave stress [N m**-2 s]"}, - /* 196 */ {"MGWS", "Meridional component of gravity wave stress [N m**-2 s]"}, - /* 197 */ {"GWD", "Gravity wave dissipation [W m**-2 s]"}, - /* 198 */ {"SRC", "Skin reservoir content [m of water]"}, - /* 199 */ {"VEG", "Vegetation fraction [(0 - 1)]"}, - /* 200 */ {"VSO", "Variance of sub-gridscale orography [m**2]"}, - /* 201 */ {"MX2T", "Maximum temperature at 2 metres since previous post-processing [K]"}, - /* 202 */ {"MN2T", "Minimum temperature at 2 metres since previous post-processing [K]"}, - /* 203 */ {"O3", "Ozone mass mixing ratio [kg kg**-1]"}, - /* 204 */ {"PAW", "Precipitation analysis weights []"}, - /* 205 */ {"RO", "Runoff [m]"}, - /* 206 */ {"TCO3", "Total column ozone [kg m**-2]"}, - /* 207 */ {"10SI", "10 metre wind speed [m s**-1]"}, - /* 208 */ {"TSRC", "Top net solar radiation, clear sky [W m**-2 s]"}, - /* 209 */ {"TTRC", "Top net thermal radiation, clear sky [W m**-2 s]"}, - /* 210 */ {"SSRC", "Surface net solar radiation, clear sky [W m**-2 s]"}, - /* 211 */ {"STRC", "Surface net thermal radiation, clear sky [W m**-2 s]"}, - /* 212 */ {"TISR", "TOA incident solar radiation [W m**-2 s]"}, - /* 213 */ {"var213", "undefined"}, - /* 214 */ {"DHR", "Diabatic heating by radiation [K]"}, - /* 215 */ {"DHVD", "Diabatic heating by vertical diffusion [K]"}, - /* 216 */ {"DHCC", "Diabatic heating by cumulus convection [K]"}, - /* 217 */ {"DHLC", "Diabatic heating large-scale condensation [K]"}, - /* 218 */ {"VDZW", "Vertical diffusion of zonal wind [m s**-1]"}, - /* 219 */ {"VDMW", "Vertical diffusion of meridional wind [m s**-1]"}, - /* 220 */ {"EWGD", "East-West gravity wave drag tendency [m s**-1]"}, - /* 221 */ {"NSGD", "North-South gravity wave drag tendency [m s**-1]"}, - /* 222 */ {"CTZW", "Convective tendency of zonal wind [m s**-1]"}, - /* 223 */ {"CTMW", "Convective tendency of meridional wind [m s**-1]"}, - /* 224 */ {"VDH", "Vertical diffusion of humidity [kg kg**-1]"}, - /* 225 */ {"HTCC", "Humidity tendency by cumulus convection [kg kg**-1]"}, - /* 226 */ {"HTLC", "Humidity tendency by large-scale condensation [kg kg**-1]"}, - /* 227 */ {"CRNH", "Change from removal of negative humidity [kg kg**-1]"}, - /* 228 */ {"TP", "Total precipitation [m]"}, - /* 229 */ {"IEWS", "Instantaneous X surface stress [N m**-2]"}, - /* 230 */ {"INSS", "Instantaneous Y surface stress [N m**-2]"}, - /* 231 */ {"ISHF", "Instantaneous surface heat flux [W m**-2]"}, - /* 232 */ {"IE", "Instantaneous moisture flux [kg m**-2 s]"}, - /* 233 */ {"ASQ", "Apparent surface humidity [kg kg**-1]"}, - /* 234 */ {"LSRH", "Logarithm of surface roughness length for heat []"}, - /* 235 */ {"SKT", "Skin temperature [K]"}, - /* 236 */ {"STL4", "Soil temperature level 4 [K]"}, - /* 237 */ {"SWL4", "Soil wetness level 4 [m]"}, - /* 238 */ {"TSN", "Temperature of snow layer [K]"}, - /* 239 */ {"CSF", "Convective snowfall [m of water equivalent]"}, - /* 240 */ {"LSF", "Large-scale snowfall [m of water equivalent]"}, - /* 241 */ {"ACF", "Accumulated cloud fraction tendency [(-1 to 1)]"}, - /* 242 */ {"ALW", "Accumulated liquid water tendency [(-1 to 1)]"}, - /* 243 */ {"FAL", "Forecast albedo [(0 - 1)]"}, - /* 244 */ {"FSR", "Forecast surface roughness [m]"}, - /* 245 */ {"FLSR", "Forecast logarithm of surface roughness for heat []"}, - /* 246 */ {"CLWC", "Cloud liquid water content [kg kg**-1]"}, - /* 247 */ {"CIWC", "Cloud ice water content [kg kg**-1]"}, - /* 248 */ {"CC", "Cloud cover [(0 - 1)]"}, - /* 249 */ {"AIW", "Accumulated ice water tendency [(-1 to 1)]"}, - /* 250 */ {"ICE", "Ice age [(0 - 1)]"}, - /* 251 */ {"ATTE", "Adiabatic tendency of temperature [K]"}, - /* 252 */ {"ATHE", "Adiabatic tendency of humidity [kg kg**-1]"}, - /* 253 */ {"ATZE", "Adiabatic tendency of zonal wind [m s**-1]"}, - /* 254 */ {"ATMW", "Adiabatic tendency of meridional wind [m s**-1]"}, - /* 255 */ {"var255", "Indicates a missing value []"}, -}; - -const struct ParmTable parm_table_ecmwf_210[256] = { - /* 0 */ {"var0", "undefined"}, - /* 1 */ {"AERMR01", "Sea Salt Aerosol (0.03 - 0.5 um) Mixing Ratio [kg kg**-1]"}, - /* 2 */ {"AERMR02", "Sea Salt Aerosol (0.5 - 5 um) Mixing Ratio [kg kg**-1]"}, - /* 3 */ {"AERMR03", "Sea Salt Aerosol (5 - 20 um) Mixing Ratio [kg kg**-1]"}, - /* 4 */ {"AERMR04", "Dust Aerosol (0.03 - 0.55 um) Mixing Ratio [kg kg**-1]"}, - /* 5 */ {"AERMR05", "Dust Aerosol (0.55 - 0.9 um) Mixing Ratio [kg kg**-1]"}, - /* 6 */ {"AERMR06", "Dust Aerosol (0.9 - 20 um) Mixing Ratio [kg kg**-1]"}, - /* 7 */ {"AERMR07", "Hydrophobic Organic Matter Aerosol Mixing Ratio [kg kg**-1]"}, - /* 8 */ {"AERMR08", "Hydrophilic Organic Matter Aerosol Mixing Ratio [kg kg**-1]"}, - /* 9 */ {"AERMR09", "Hydrophobic Black Carbon Aerosol Mixing Ratio [kg kg**-1]"}, - /* 10 */ {"AERMR10", "Hydrophilic Black Carbon Aerosol Mixing Ratio [kg kg**-1]"}, - /* 11 */ {"AERMR11", "Sulphate Aerosol Mixing Ratio [kg kg**-1]"}, - /* 12 */ {"AERMR12", "Aerosol type 12 mixing ratio [kg kg**-1]"}, - /* 13 */ {"var13", "undefined"}, - /* 14 */ {"var14", "undefined"}, - /* 15 */ {"var15", "undefined"}, - /* 16 */ {"AERGN01", "Aerosol type 1 source/gain accumulated [kg m**-2]"}, - /* 17 */ {"AERGN02", "Aerosol type 2 source/gain accumulated [kg m**-2]"}, - /* 18 */ {"AERGN03", "Aerosol type 3 source/gain accumulated [kg m**-2]"}, - /* 19 */ {"AERGN04", "Aerosol type 4 source/gain accumulated [kg m**-2]"}, - /* 20 */ {"AERGN05", "Aerosol type 5 source/gain accumulated [kg m**-2]"}, - /* 21 */ {"AERGN06", "Aerosol type 6 source/gain accumulated [kg m**-2]"}, - /* 22 */ {"AERGN07", "Aerosol type 7 source/gain accumulated [kg m**-2]"}, - /* 23 */ {"AERGN08", "Aerosol type 8 source/gain accumulated [kg m**-2]"}, - /* 24 */ {"AERGN09", "Aerosol type 9 source/gain accumulated [kg m**-2]"}, - /* 25 */ {"AERGN10", "Aerosol type 10 source/gain accumulated [kg m**-2]"}, - /* 26 */ {"AERGN11", "Aerosol type 11 source/gain accumulated [kg m**-2]"}, - /* 27 */ {"AERGN12", "Aerosol type 12 source/gain accumulated [kg m**-2]"}, - /* 28 */ {"var28", "undefined"}, - /* 29 */ {"var29", "undefined"}, - /* 30 */ {"var30", "undefined"}, - /* 31 */ {"AERLS01", "Aerosol type 1 sink/loss accumulated [kg m**-2]"}, - /* 32 */ {"AERLS02", "Aerosol type 2 sink/loss accumulated [kg m**-2]"}, - /* 33 */ {"AERLS03", "Aerosol type 3 sink/loss accumulated [kg m**-2]"}, - /* 34 */ {"AERLS04", "Aerosol type 4 sink/loss accumulated [kg m**-2]"}, - /* 35 */ {"AERLS05", "Aerosol type 5 sink/loss accumulated [kg m**-2]"}, - /* 36 */ {"AERLS06", "Aerosol type 6 sink/loss accumulated [kg m**-2]"}, - /* 37 */ {"AERLS07", "Aerosol type 7 sink/loss accumulated [kg m**-2]"}, - /* 38 */ {"AERLS08", "Aerosol type 8 sink/loss accumulated [kg m**-2]"}, - /* 39 */ {"AERLS09", "Aerosol type 9 sink/loss accumulated [kg m**-2]"}, - /* 40 */ {"AERLS10", "Aerosol type 10 sink/loss accumulated [kg m**-2]"}, - /* 41 */ {"AERLS11", "Aerosol type 11 sink/loss accumulated [kg m**-2]"}, - /* 42 */ {"AERLS12", "Aerosol type 12 sink/loss accumulated [kg m**-2]"}, - /* 43 */ {"var43", "undefined"}, - /* 44 */ {"var44", "undefined"}, - /* 45 */ {"var45", "undefined"}, - /* 46 */ {"AERPR", "Aerosol precursor mixing ratio [kg kg**-1]"}, - /* 47 */ {"AERSM", "Aerosol small mode mixing ratio [kg kg**-1]"}, - /* 48 */ {"AERLG", "Aerosol large mode mixing ratio [kg kg**-1]"}, - /* 49 */ {"AODPR", "Aerosol precursor optical depth [dimensionless]"}, - /* 50 */ {"AODSM", "Aerosol small mode optical depth [dimensionless]"}, - /* 51 */ {"AODLG", "Aerosol large mode optical depth [dimensionless]"}, - /* 52 */ {"AERDEP", "Dust emission potential [kg s**2 m**-5]"}, - /* 53 */ {"AERLTS", "Lifting threshold speed [m s**-1]"}, - /* 54 */ {"AERSCC", "Soil clay content [%]"}, - /* 55 */ {"var55", "undefined"}, - /* 56 */ {"var56", "undefined"}, - /* 57 */ {"var57", "undefined"}, - /* 58 */ {"var58", "undefined"}, - /* 59 */ {"var59", "undefined"}, - /* 60 */ {"var60", "undefined"}, - /* 61 */ {"CO2", "Carbon Dioxide [kg kg**-1]"}, - /* 62 */ {"CH4", "Methane [kg kg**-1]"}, - /* 63 */ {"N2O", "Nitrous oxide [kg kg**-1]"}, - /* 64 */ {"TCCO2", "Total column Carbon Dioxide [kg m**-2]"}, - /* 65 */ {"TCCH4", "Total column Methane [kg m**-2]"}, - /* 66 */ {"TCN2O", "Total column Nitrous oxide [kg m**-2]"}, - /* 67 */ {"CO2OF", "Ocean flux of Carbon Dioxide [kg m**-2 s**-1]"}, - /* 68 */ {"CO2NBF", "Natural biosphere flux of Carbon Dioxide [kg m**-2 s**-1]"}, - /* 69 */ {"CO2APF", "Anthropogenic emissions of Carbon Dioxide [kg m**-2 s**-1]"}, - /* 70 */ {"CH4F", "Methane Surface Fluxes [kg m**-2 s**-1]"}, - /* 71 */ {"kCH4", "Methane loss rate due to radical hydroxyl (OH) [s**-1]"}, - /* 72 */ {"var72", "undefined"}, - /* 73 */ {"var73", "undefined"}, - /* 74 */ {"var74", "undefined"}, - /* 75 */ {"var75", "undefined"}, - /* 76 */ {"var76", "undefined"}, - /* 77 */ {"var77", "undefined"}, - /* 78 */ {"var78", "undefined"}, - /* 79 */ {"var79", "undefined"}, - /* 80 */ {"CO2FIRE", "Wildfire flux of Carbon Dioxide [kg m**-2 s**-1]"}, - /* 81 */ {"COFIRE", "Wildfire flux of Carbon Monoxide [kg m**-2 s**-1]"}, - /* 82 */ {"CH4FIRE", "Wildfire flux of Methane [kg m**-2 s**-1]"}, - /* 83 */ {"NMHCFIRE", "Wildfire flux of Non-Methane Hydro-Carbons [kg m**-2 s**-1]"}, - /* 84 */ {"H2FIRE", "Wildfire flux of Hydrogen [kg m**-2 s**-1]"}, - /* 85 */ {"NOXFIRE", "Wildfire flux of Nitrogen Oxides NOx [kg m**-2 s**-1]"}, - /* 86 */ {"N2OFIRE", "Wildfire flux of Nitrous Oxide [kg m**-2 s**-1]"}, - /* 87 */ {"PM2P5FIRE", "Wildfire flux of Particulate Matter PM2.5 [kg m**-2 s**-1]"}, - /* 88 */ {"TPMFIRE", "Wildfire flux of Total Particulate Matter [kg m**-2 s**-1]"}, - /* 89 */ {"TCFIRE", "Wildfire flux of Total Carbon in Aerosols [kg m**-2 s**-1]"}, - /* 90 */ {"OCFIRE", "Wildfire flux of Organic Carbon [kg m**-2 s**-1]"}, - /* 91 */ {"BCFIRE", "Wildfire flux of Black Carbon [kg m**-2 s**-1]"}, - /* 92 */ {"CFIRE", "Wildfire overall flux of burnt Carbon [kg m**-2 s**-1]"}, - /* 93 */ {"C4FFIRE", "Wildfire fraction of C4 plants [dimensionless]"}, - /* 94 */ {"VEGFIRE", "Wildfire vegetation map index [dimensionless]"}, - /* 95 */ {"CCFIRE", "Wildfire Combustion Completeness [dimensionless]"}, - /* 96 */ {"FLFIRE", "Wildfire Fuel Load"}, - /* 97 */ {"BFFIRE", "Wildfire fraction of area burnt [dimensionless]"}, - /* 98 */ {"OAFIRE", "Wildfire observed area [m**2]"}, - /* 99 */ {"FRPFIRE", "Wildfire radiative power [W m**-2]"}, - /* 100 */ {"CRFIRE", "Wildfire combustion rate [kg m**-2 s**-1]"}, - /* 101 */ {"var101", "undefined"}, - /* 102 */ {"var102", "undefined"}, - /* 103 */ {"var103", "undefined"}, - /* 104 */ {"var104", "undefined"}, - /* 105 */ {"var105", "undefined"}, - /* 106 */ {"var106", "undefined"}, - /* 107 */ {"var107", "undefined"}, - /* 108 */ {"var108", "undefined"}, - /* 109 */ {"var109", "undefined"}, - /* 110 */ {"var110", "undefined"}, - /* 111 */ {"var111", "undefined"}, - /* 112 */ {"var112", "undefined"}, - /* 113 */ {"var113", "undefined"}, - /* 114 */ {"var114", "undefined"}, - /* 115 */ {"var115", "undefined"}, - /* 116 */ {"var116", "undefined"}, - /* 117 */ {"var117", "undefined"}, - /* 118 */ {"var118", "undefined"}, - /* 119 */ {"var119", "undefined"}, - /* 120 */ {"var120", "undefined"}, - /* 121 */ {"NO2", "Nitrogen dioxide [kg kg**-1]"}, - /* 122 */ {"SO2", "Sulphur dioxide [kg kg**-1]"}, - /* 123 */ {"CO", "Carbon monoxide [kg kg**-1]"}, - /* 124 */ {"HCHO", "Formaldehyde [kg kg**-1]"}, - /* 125 */ {"TCNO2", "Total column Nitrogen dioxide [kg m**-2]"}, - /* 126 */ {"TCSO2", "Total column Sulphur dioxide [kg m**-2]"}, - /* 127 */ {"TCCO", "Total column Carbon monoxide [kg m**-2]"}, - /* 128 */ {"TCHCHO", "Total column Formaldehyde [kg m**-2]"}, - /* 129 */ {"NOX", "Nitrogen Oxides [kg kg**-1]"}, - /* 130 */ {"TCNOX", "Total Column Nitrogen Oxides [kg m**-2]"}, - /* 131 */ {"GRG1", "Reactive tracer 1 mass mixing ratio [kg kg**-1]"}, - /* 132 */ {"TCGRG1", "Total column GRG tracer 1 [kg m**-2]"}, - /* 133 */ {"GRG2", "Reactive tracer 2 mass mixing ratio [kg kg**-1]"}, - /* 134 */ {"TCGRG2", "Total column GRG tracer 2 [kg m**-2]"}, - /* 135 */ {"GRG3", "Reactive tracer 3 mass mixing ratio [kg kg**-1]"}, - /* 136 */ {"TCGRG3", "Total column GRG tracer 3 [kg m**-2]"}, - /* 137 */ {"GRG4", "Reactive tracer 4 mass mixing ratio [kg kg**-1]"}, - /* 138 */ {"TCGRG4", "Total column GRG tracer 4 [kg m**-2]"}, - /* 139 */ {"GRG5", "Reactive tracer 5 mass mixing ratio [kg kg**-1]"}, - /* 140 */ {"TCGRG5", "Total column GRG tracer 5 [kg m**-2]"}, - /* 141 */ {"GRG6", "Reactive tracer 6 mass mixing ratio [kg kg**-1]"}, - /* 142 */ {"TCGRG6", "Total column GRG tracer 6 [kg m**-2]"}, - /* 143 */ {"GRG7", "Reactive tracer 7 mass mixing ratio [kg kg**-1]"}, - /* 144 */ {"TCGRG7", "Total column GRG tracer 7 [kg m**-2]"}, - /* 145 */ {"GRG8", "Reactive tracer 8 mass mixing ratio [kg kg**-1]"}, - /* 146 */ {"TCGRG8", "Total column GRG tracer 8 [kg m**-2]"}, - /* 147 */ {"GRG9", "Reactive tracer 9 mass mixing ratio [kg kg**-1]"}, - /* 148 */ {"TCGRG9", "Total column GRG tracer 9 [kg m**-2]"}, - /* 149 */ {"GRG10", "Reactive tracer 10 mass mixing ratio [kg kg**-1]"}, - /* 150 */ {"TCGRG10", "Total column GRG tracer 10 [kg m**-2]"}, - /* 151 */ {"SFNOX", "Surface flux Nitrogen oxides [kg m**-2 s**-1]"}, - /* 152 */ {"SFNO2", "Surface flux Nitrogen dioxide [kg m**-2 s**-1]"}, - /* 153 */ {"SFSO2", "Surface flux Sulphur dioxide [kg m**-2 s**-1]"}, - /* 154 */ {"SFCO2", "Surface flux Carbon monoxide [kg m**-2 s**-1]"}, - /* 155 */ {"SFHCHO", "Surface flux Formaldehyde [kg m**-2 s**-1]"}, - /* 156 */ {"SFGO3", "Surface flux GEMS Ozone [kg m**-2 s**-1]"}, - /* 157 */ {"SFGR1", "Surface flux reactive tracer 1 [kg m**-2 s**-1]"}, - /* 158 */ {"SFGR2", "Surface flux reactive tracer 2 [kg m**-2 s**-1]"}, - /* 159 */ {"SFGR3", "Surface flux reactive tracer 3 [kg m**-2 s**-1]"}, - /* 160 */ {"SFGR4", "Surface flux reactive tracer 4 [kg m**-2 s**-1]"}, - /* 161 */ {"SFGR5", "Surface flux reactive tracer 5 [kg m**-2 s**-1]"}, - /* 162 */ {"SFGR6", "Surface flux reactive tracer 6 [kg m**-2 s**-1]"}, - /* 163 */ {"SFGR7", "Surface flux reactive tracer 7 [kg m**-2 s**-1]"}, - /* 164 */ {"SFGR8", "Surface flux reactive tracer 8 [kg m**-2 s**-1]"}, - /* 165 */ {"SFGR9", "Surface flux reactive tracer 9 [kg m**-2 s**-1]"}, - /* 166 */ {"SFGR10", "Surface flux reactive tracer 10 [kg m**-2 s**-1]"}, - /* 167 */ {"var167", "undefined"}, - /* 168 */ {"var168", "undefined"}, - /* 169 */ {"var169", "undefined"}, - /* 170 */ {"var170", "undefined"}, - /* 171 */ {"var171", "undefined"}, - /* 172 */ {"var172", "undefined"}, - /* 173 */ {"var173", "undefined"}, - /* 174 */ {"var174", "undefined"}, - /* 175 */ {"var175", "undefined"}, - /* 176 */ {"var176", "undefined"}, - /* 177 */ {"var177", "undefined"}, - /* 178 */ {"var178", "undefined"}, - /* 179 */ {"var179", "undefined"}, - /* 180 */ {"var180", "undefined"}, - /* 181 */ {"Ra", "Radon [kg kg**-1]"}, - /* 182 */ {"SF6", "Sulphur Hexafluoride [kg kg**-1]"}, - /* 183 */ {"TCRa", "Total column Radon [kg m**-2]"}, - /* 184 */ {"TCSF6", "Total column Sulphur Hexafluoride [kg m**-2]"}, - /* 185 */ {"SF6APF", "Anthropogenic Emissions of Sulphur Hexafluoride [kg m**-2 s**-1]"}, - /* 186 */ {"var186", "undefined"}, - /* 187 */ {"var187", "undefined"}, - /* 188 */ {"var188", "undefined"}, - /* 189 */ {"var189", "undefined"}, - /* 190 */ {"var190", "undefined"}, - /* 191 */ {"var191", "undefined"}, - /* 192 */ {"var192", "undefined"}, - /* 193 */ {"var193", "undefined"}, - /* 194 */ {"var194", "undefined"}, - /* 195 */ {"var195", "undefined"}, - /* 196 */ {"var196", "undefined"}, - /* 197 */ {"var197", "undefined"}, - /* 198 */ {"var198", "undefined"}, - /* 199 */ {"var199", "undefined"}, - /* 200 */ {"var200", "undefined"}, - /* 201 */ {"var201", "undefined"}, - /* 202 */ {"var202", "undefined"}, - /* 203 */ {"GO3", "GEMS Ozone [kg kg**-1]"}, - /* 204 */ {"var204", "undefined"}, - /* 205 */ {"var205", "undefined"}, - /* 206 */ {"GTCO3", "GEMS Total column ozone [kg m**-2]"}, - /* 207 */ {"AOD550", "Total Aerosol Optical Depth at 550nm [-]"}, - /* 208 */ {"SSAOD550", "Sea Salt Aerosol Optical Depth at 550nm [-]"}, - /* 209 */ {"DUAOD550", "Dust Aerosol Optical Depth at 550nm [-]"}, - /* 210 */ {"OMAOD550", "Organic Matter Aerosol Optical Depth at 550nm [-]"}, - /* 211 */ {"BCAOD550", "Black Carbon Aerosol Optical Depth at 550nm [-]"}, - /* 212 */ {"SUAOD550", "Sulphate Aerosol Optical Depth at 550nm [-]"}, - /* 213 */ {"AOD469", "Total Aerosol Optical Depth at 469nm [-]"}, - /* 214 */ {"AOD670", "Total Aerosol Optical Depth at 670nm [-]"}, - /* 215 */ {"AOD865", "Total Aerosol Optical Depth at 865nm [-]"}, - /* 216 */ {"AOD1240", "Total Aerosol Optical Depth at 1240nm [-]"}, - /* 217 */ {"var217", "undefined"}, - /* 218 */ {"var218", "undefined"}, - /* 219 */ {"var219", "undefined"}, - /* 220 */ {"var220", "undefined"}, - /* 221 */ {"var221", "undefined"}, - /* 222 */ {"var222", "undefined"}, - /* 223 */ {"var223", "undefined"}, - /* 224 */ {"var224", "undefined"}, - /* 225 */ {"var225", "undefined"}, - /* 226 */ {"var226", "undefined"}, - /* 227 */ {"var227", "undefined"}, - /* 228 */ {"var228", "undefined"}, - /* 229 */ {"var229", "undefined"}, - /* 230 */ {"var230", "undefined"}, - /* 231 */ {"var231", "undefined"}, - /* 232 */ {"var232", "undefined"}, - /* 233 */ {"var233", "undefined"}, - /* 234 */ {"var234", "undefined"}, - /* 235 */ {"var235", "undefined"}, - /* 236 */ {"var236", "undefined"}, - /* 237 */ {"var237", "undefined"}, - /* 238 */ {"var238", "undefined"}, - /* 239 */ {"var239", "undefined"}, - /* 240 */ {"var240", "undefined"}, - /* 241 */ {"var241", "undefined"}, - /* 242 */ {"var242", "undefined"}, - /* 243 */ {"var243", "undefined"}, - /* 244 */ {"var244", "undefined"}, - /* 245 */ {"var245", "undefined"}, - /* 246 */ {"var246", "undefined"}, - /* 247 */ {"var247", "undefined"}, - /* 248 */ {"var248", "undefined"}, - /* 249 */ {"var249", "undefined"}, - /* 250 */ {"var250", "undefined"}, - /* 251 */ {"var251", "undefined"}, - /* 252 */ {"var252", "undefined"}, - /* 253 */ {"var253", "undefined"}, - /* 254 */ {"var254", "undefined"}, - /* 255 */ {"var255", "undefined"}, -}; - -const struct ParmTable parm_table_ecmwf_211[256] = { - /* 0 */ {"var0", "undefined"}, - /* 1 */ {"var1", "undefined"}, - /* 2 */ {"var2", "undefined"}, - /* 3 */ {"var3", "undefined"}, - /* 4 */ {"var4", "undefined"}, - /* 5 */ {"var5", "undefined"}, - /* 6 */ {"var6", "undefined"}, - /* 7 */ {"var7", "undefined"}, - /* 8 */ {"var8", "undefined"}, - /* 9 */ {"var9", "undefined"}, - /* 10 */ {"var10", "undefined"}, - /* 11 */ {"var11", "undefined"}, - /* 12 */ {"var12", "undefined"}, - /* 13 */ {"var13", "undefined"}, - /* 14 */ {"var14", "undefined"}, - /* 15 */ {"var15", "undefined"}, - /* 16 */ {"var16", "undefined"}, - /* 17 */ {"var17", "undefined"}, - /* 18 */ {"var18", "undefined"}, - /* 19 */ {"var19", "undefined"}, - /* 20 */ {"var20", "undefined"}, - /* 21 */ {"var21", "undefined"}, - /* 22 */ {"var22", "undefined"}, - /* 23 */ {"var23", "undefined"}, - /* 24 */ {"var24", "undefined"}, - /* 25 */ {"var25", "undefined"}, - /* 26 */ {"var26", "undefined"}, - /* 27 */ {"var27", "undefined"}, - /* 28 */ {"var28", "undefined"}, - /* 29 */ {"var29", "undefined"}, - /* 30 */ {"var30", "undefined"}, - /* 31 */ {"var31", "undefined"}, - /* 32 */ {"var32", "undefined"}, - /* 33 */ {"var33", "undefined"}, - /* 34 */ {"var34", "undefined"}, - /* 35 */ {"var35", "undefined"}, - /* 36 */ {"var36", "undefined"}, - /* 37 */ {"var37", "undefined"}, - /* 38 */ {"var38", "undefined"}, - /* 39 */ {"var39", "undefined"}, - /* 40 */ {"var40", "undefined"}, - /* 41 */ {"var41", "undefined"}, - /* 42 */ {"var42", "undefined"}, - /* 43 */ {"var43", "undefined"}, - /* 44 */ {"var44", "undefined"}, - /* 45 */ {"var45", "undefined"}, - /* 46 */ {"AERPR", "Aerosol precursor mixing ratio [kg kg**-1]"}, - /* 47 */ {"AERSM", "Aerosol small mode mixing ratio [kg kg**-1]"}, - /* 48 */ {"AERLG", "Aerosol large mode mixing ratio [kg kg**-1]"}, - /* 49 */ {"AODPR", "Aerosol precursor optical depth [dimensionless]"}, - /* 50 */ {"AODSM", "Aerosol small mode optical depth [dimensionless]"}, - /* 51 */ {"AODLG", "Aerosol large mode optical depth [dimensionless]"}, - /* 52 */ {"var52", "undefined"}, - /* 53 */ {"var53", "undefined"}, - /* 54 */ {"var54", "undefined"}, - /* 55 */ {"var55", "undefined"}, - /* 56 */ {"var56", "undefined"}, - /* 57 */ {"var57", "undefined"}, - /* 58 */ {"var58", "undefined"}, - /* 59 */ {"var59", "undefined"}, - /* 60 */ {"var60", "undefined"}, - /* 61 */ {"CO2", "Carbon Dioxide [kg kg**-1]"}, - /* 62 */ {"CH4", "Methane [kg kg**-1]"}, - /* 63 */ {"N2O", "Nitrous oxide [kg kg**-1]"}, - /* 64 */ {"var64", "undefined"}, - /* 65 */ {"var65", "undefined"}, - /* 66 */ {"var66", "undefined"}, - /* 67 */ {"var67", "undefined"}, - /* 68 */ {"var68", "undefined"}, - /* 69 */ {"var69", "undefined"}, - /* 70 */ {"var70", "undefined"}, - /* 71 */ {"var71", "undefined"}, - /* 72 */ {"var72", "undefined"}, - /* 73 */ {"var73", "undefined"}, - /* 74 */ {"var74", "undefined"}, - /* 75 */ {"var75", "undefined"}, - /* 76 */ {"var76", "undefined"}, - /* 77 */ {"var77", "undefined"}, - /* 78 */ {"var78", "undefined"}, - /* 79 */ {"var79", "undefined"}, - /* 80 */ {"var80", "undefined"}, - /* 81 */ {"var81", "undefined"}, - /* 82 */ {"var82", "undefined"}, - /* 83 */ {"var83", "undefined"}, - /* 84 */ {"var84", "undefined"}, - /* 85 */ {"var85", "undefined"}, - /* 86 */ {"var86", "undefined"}, - /* 87 */ {"var87", "undefined"}, - /* 88 */ {"var88", "undefined"}, - /* 89 */ {"var89", "undefined"}, - /* 90 */ {"var90", "undefined"}, - /* 91 */ {"var91", "undefined"}, - /* 92 */ {"var92", "undefined"}, - /* 93 */ {"var93", "undefined"}, - /* 94 */ {"var94", "undefined"}, - /* 95 */ {"var95", "undefined"}, - /* 96 */ {"var96", "undefined"}, - /* 97 */ {"var97", "undefined"}, - /* 98 */ {"var98", "undefined"}, - /* 99 */ {"var99", "undefined"}, - /* 100 */ {"var100", "undefined"}, - /* 101 */ {"var101", "undefined"}, - /* 102 */ {"var102", "undefined"}, - /* 103 */ {"var103", "undefined"}, - /* 104 */ {"var104", "undefined"}, - /* 105 */ {"var105", "undefined"}, - /* 106 */ {"var106", "undefined"}, - /* 107 */ {"var107", "undefined"}, - /* 108 */ {"var108", "undefined"}, - /* 109 */ {"var109", "undefined"}, - /* 110 */ {"var110", "undefined"}, - /* 111 */ {"var111", "undefined"}, - /* 112 */ {"var112", "undefined"}, - /* 113 */ {"var113", "undefined"}, - /* 114 */ {"var114", "undefined"}, - /* 115 */ {"var115", "undefined"}, - /* 116 */ {"var116", "undefined"}, - /* 117 */ {"var117", "undefined"}, - /* 118 */ {"var118", "undefined"}, - /* 119 */ {"var119", "undefined"}, - /* 120 */ {"var120", "undefined"}, - /* 121 */ {"NO2", "Nitrogen dioxide [kg kg**-1]"}, - /* 122 */ {"SO2", "Sulphur dioxide [kg kg**-1]"}, - /* 123 */ {"CO", "Carbon monoxide [kg kg**-1]"}, - /* 124 */ {"HCHO", "Formaldehyde [kg kg**-1]"}, - /* 125 */ {"var125", "undefined"}, - /* 126 */ {"var126", "undefined"}, - /* 127 */ {"var127", "undefined"}, - /* 128 */ {"var128", "undefined"}, - /* 129 */ {"var129", "undefined"}, - /* 130 */ {"var130", "undefined"}, - /* 131 */ {"var131", "undefined"}, - /* 132 */ {"var132", "undefined"}, - /* 133 */ {"var133", "undefined"}, - /* 134 */ {"var134", "undefined"}, - /* 135 */ {"var135", "undefined"}, - /* 136 */ {"var136", "undefined"}, - /* 137 */ {"var137", "undefined"}, - /* 138 */ {"var138", "undefined"}, - /* 139 */ {"var139", "undefined"}, - /* 140 */ {"var140", "undefined"}, - /* 141 */ {"var141", "undefined"}, - /* 142 */ {"var142", "undefined"}, - /* 143 */ {"var143", "undefined"}, - /* 144 */ {"var144", "undefined"}, - /* 145 */ {"var145", "undefined"}, - /* 146 */ {"var146", "undefined"}, - /* 147 */ {"var147", "undefined"}, - /* 148 */ {"var148", "undefined"}, - /* 149 */ {"var149", "undefined"}, - /* 150 */ {"var150", "undefined"}, - /* 151 */ {"var151", "undefined"}, - /* 152 */ {"var152", "undefined"}, - /* 153 */ {"var153", "undefined"}, - /* 154 */ {"var154", "undefined"}, - /* 155 */ {"var155", "undefined"}, - /* 156 */ {"var156", "undefined"}, - /* 157 */ {"var157", "undefined"}, - /* 158 */ {"var158", "undefined"}, - /* 159 */ {"var159", "undefined"}, - /* 160 */ {"var160", "undefined"}, - /* 161 */ {"var161", "undefined"}, - /* 162 */ {"var162", "undefined"}, - /* 163 */ {"var163", "undefined"}, - /* 164 */ {"var164", "undefined"}, - /* 165 */ {"var165", "undefined"}, - /* 166 */ {"var166", "undefined"}, - /* 167 */ {"var167", "undefined"}, - /* 168 */ {"var168", "undefined"}, - /* 169 */ {"var169", "undefined"}, - /* 170 */ {"var170", "undefined"}, - /* 171 */ {"var171", "undefined"}, - /* 172 */ {"var172", "undefined"}, - /* 173 */ {"var173", "undefined"}, - /* 174 */ {"var174", "undefined"}, - /* 175 */ {"var175", "undefined"}, - /* 176 */ {"var176", "undefined"}, - /* 177 */ {"var177", "undefined"}, - /* 178 */ {"var178", "undefined"}, - /* 179 */ {"var179", "undefined"}, - /* 180 */ {"var180", "undefined"}, - /* 181 */ {"var181", "undefined"}, - /* 182 */ {"var182", "undefined"}, - /* 183 */ {"var183", "undefined"}, - /* 184 */ {"var184", "undefined"}, - /* 185 */ {"var185", "undefined"}, - /* 186 */ {"var186", "undefined"}, - /* 187 */ {"var187", "undefined"}, - /* 188 */ {"var188", "undefined"}, - /* 189 */ {"var189", "undefined"}, - /* 190 */ {"var190", "undefined"}, - /* 191 */ {"var191", "undefined"}, - /* 192 */ {"var192", "undefined"}, - /* 193 */ {"var193", "undefined"}, - /* 194 */ {"var194", "undefined"}, - /* 195 */ {"var195", "undefined"}, - /* 196 */ {"var196", "undefined"}, - /* 197 */ {"var197", "undefined"}, - /* 198 */ {"var198", "undefined"}, - /* 199 */ {"var199", "undefined"}, - /* 200 */ {"var200", "undefined"}, - /* 201 */ {"var201", "undefined"}, - /* 202 */ {"var202", "undefined"}, - /* 203 */ {"GO3", "GEMS Ozone [kg kg**-1]"}, - /* 204 */ {"var204", "undefined"}, - /* 205 */ {"var205", "undefined"}, - /* 206 */ {"var206", "undefined"}, - /* 207 */ {"var207", "undefined"}, - /* 208 */ {"var208", "undefined"}, - /* 209 */ {"var209", "undefined"}, - /* 210 */ {"var210", "undefined"}, - /* 211 */ {"var211", "undefined"}, - /* 212 */ {"var212", "undefined"}, - /* 213 */ {"var213", "undefined"}, - /* 214 */ {"var214", "undefined"}, - /* 215 */ {"var215", "undefined"}, - /* 216 */ {"var216", "undefined"}, - /* 217 */ {"var217", "undefined"}, - /* 218 */ {"var218", "undefined"}, - /* 219 */ {"var219", "undefined"}, - /* 220 */ {"var220", "undefined"}, - /* 221 */ {"var221", "undefined"}, - /* 222 */ {"var222", "undefined"}, - /* 223 */ {"var223", "undefined"}, - /* 224 */ {"var224", "undefined"}, - /* 225 */ {"var225", "undefined"}, - /* 226 */ {"var226", "undefined"}, - /* 227 */ {"var227", "undefined"}, - /* 228 */ {"var228", "undefined"}, - /* 229 */ {"var229", "undefined"}, - /* 230 */ {"var230", "undefined"}, - /* 231 */ {"var231", "undefined"}, - /* 232 */ {"var232", "undefined"}, - /* 233 */ {"var233", "undefined"}, - /* 234 */ {"var234", "undefined"}, - /* 235 */ {"var235", "undefined"}, - /* 236 */ {"var236", "undefined"}, - /* 237 */ {"var237", "undefined"}, - /* 238 */ {"var238", "undefined"}, - /* 239 */ {"var239", "undefined"}, - /* 240 */ {"var240", "undefined"}, - /* 241 */ {"var241", "undefined"}, - /* 242 */ {"var242", "undefined"}, - /* 243 */ {"var243", "undefined"}, - /* 244 */ {"var244", "undefined"}, - /* 245 */ {"var245", "undefined"}, - /* 246 */ {"var246", "undefined"}, - /* 247 */ {"var247", "undefined"}, - /* 248 */ {"var248", "undefined"}, - /* 249 */ {"var249", "undefined"}, - /* 250 */ {"var250", "undefined"}, - /* 251 */ {"var251", "undefined"}, - /* 252 */ {"var252", "undefined"}, - /* 253 */ {"var253", "undefined"}, - /* 254 */ {"var254", "undefined"}, - /* 255 */ {"var255", "undefined"}, -}; - -const struct ParmTable parm_table_ecmwf_228[256] = { - /* 0 */ {"var0", "undefined"}, - /* 1 */ {"CIN", "Convective inhibition [J kg**-1]"}, - /* 2 */ {"OROG", "Orography [m]"}, - /* 3 */ {"ZUST", "Friction velocity [m s**-1]"}, - /* 4 */ {"MEAN2T", "Mean temperature at 2 metres [K]"}, - /* 5 */ {"MEAN10WS", "Mean of 10 metre wind speed [m s**-1]"}, - /* 6 */ {"MEANTCC", "Mean total cloud cover [(0 - 1)]"}, - /* 7 */ {"DL", "Lake depth [m]"}, - /* 8 */ {"LMLT", "Lake mix-layer temperature [K]"}, - /* 9 */ {"LMLD", "Lake mix-layer depth [m]"}, - /* 10 */ {"LBLT", "Lake bottom temperature [K]"}, - /* 11 */ {"LTLT", "Lake total layer temperature [K]"}, - /* 12 */ {"LSHF", "Lake shape factor [dimensionless]"}, - /* 13 */ {"LICT", "Lake ice temperature [K]"}, - /* 14 */ {"LICD", "Lake ice depth [m]"}, - /* 15 */ {"DNDZN", "Minimum vertical gradient of refractivity inside trapping layer [m**-1]"}, - /* 16 */ {"DNDZA", "Mean vertical gradient of refractivity inside trapping layer [m**-1]"}, - /* 17 */ {"DCTB", "Duct base height [m]"}, - /* 18 */ {"TPLB", "Trapping layer base height [m]"}, - /* 19 */ {"TPLT", "Trapping layer top height [m]"}, - /* 20 */ {"var20", "undefined"}, - /* 21 */ {"var21", "undefined"}, - /* 22 */ {"var22", "undefined"}, - /* 23 */ {"var23", "undefined"}, - /* 24 */ {"var24", "undefined"}, - /* 25 */ {"var25", "undefined"}, - /* 26 */ {"var26", "undefined"}, - /* 27 */ {"var27", "undefined"}, - /* 28 */ {"var28", "undefined"}, - /* 29 */ {"var29", "undefined"}, - /* 30 */ {"var30", "undefined"}, - /* 31 */ {"var31", "undefined"}, - /* 32 */ {"var32", "undefined"}, - /* 33 */ {"var33", "undefined"}, - /* 34 */ {"var34", "undefined"}, - /* 35 */ {"var35", "undefined"}, - /* 36 */ {"var36", "undefined"}, - /* 37 */ {"var37", "undefined"}, - /* 38 */ {"var38", "undefined"}, - /* 39 */ {"SM", "Soil Moisture [kg m**-3]"}, - /* 40 */ {"var40", "undefined"}, - /* 41 */ {"var41", "undefined"}, - /* 42 */ {"var42", "undefined"}, - /* 43 */ {"var43", "undefined"}, - /* 44 */ {"var44", "undefined"}, - /* 45 */ {"var45", "undefined"}, - /* 46 */ {"var46", "undefined"}, - /* 47 */ {"var47", "undefined"}, - /* 48 */ {"var48", "undefined"}, - /* 49 */ {"var49", "undefined"}, - /* 50 */ {"var50", "undefined"}, - /* 51 */ {"var51", "undefined"}, - /* 52 */ {"var52", "undefined"}, - /* 53 */ {"var53", "undefined"}, - /* 54 */ {"var54", "undefined"}, - /* 55 */ {"var55", "undefined"}, - /* 56 */ {"var56", "undefined"}, - /* 57 */ {"var57", "undefined"}, - /* 58 */ {"var58", "undefined"}, - /* 59 */ {"var59", "undefined"}, - /* 60 */ {"var60", "undefined"}, - /* 61 */ {"var61", "undefined"}, - /* 62 */ {"var62", "undefined"}, - /* 63 */ {"var63", "undefined"}, - /* 64 */ {"var64", "undefined"}, - /* 65 */ {"var65", "undefined"}, - /* 66 */ {"var66", "undefined"}, - /* 67 */ {"var67", "undefined"}, - /* 68 */ {"var68", "undefined"}, - /* 69 */ {"var69", "undefined"}, - /* 70 */ {"var70", "undefined"}, - /* 71 */ {"var71", "undefined"}, - /* 72 */ {"var72", "undefined"}, - /* 73 */ {"var73", "undefined"}, - /* 74 */ {"var74", "undefined"}, - /* 75 */ {"var75", "undefined"}, - /* 76 */ {"var76", "undefined"}, - /* 77 */ {"var77", "undefined"}, - /* 78 */ {"var78", "undefined"}, - /* 79 */ {"var79", "undefined"}, - /* 80 */ {"var80", "undefined"}, - /* 81 */ {"var81", "undefined"}, - /* 82 */ {"var82", "undefined"}, - /* 83 */ {"var83", "undefined"}, - /* 84 */ {"var84", "undefined"}, - /* 85 */ {"var85", "undefined"}, - /* 86 */ {"var86", "undefined"}, - /* 87 */ {"var87", "undefined"}, - /* 88 */ {"var88", "undefined"}, - /* 89 */ {"var89", "undefined"}, - /* 90 */ {"var90", "undefined"}, - /* 91 */ {"var91", "undefined"}, - /* 92 */ {"var92", "undefined"}, - /* 93 */ {"var93", "undefined"}, - /* 94 */ {"var94", "undefined"}, - /* 95 */ {"var95", "undefined"}, - /* 96 */ {"var96", "undefined"}, - /* 97 */ {"var97", "undefined"}, - /* 98 */ {"var98", "undefined"}, - /* 99 */ {"var99", "undefined"}, - /* 100 */ {"var100", "undefined"}, - /* 101 */ {"var101", "undefined"}, - /* 102 */ {"var102", "undefined"}, - /* 103 */ {"var103", "undefined"}, - /* 104 */ {"var104", "undefined"}, - /* 105 */ {"var105", "undefined"}, - /* 106 */ {"var106", "undefined"}, - /* 107 */ {"var107", "undefined"}, - /* 108 */ {"var108", "undefined"}, - /* 109 */ {"var109", "undefined"}, - /* 110 */ {"var110", "undefined"}, - /* 111 */ {"var111", "undefined"}, - /* 112 */ {"var112", "undefined"}, - /* 113 */ {"var113", "undefined"}, - /* 114 */ {"var114", "undefined"}, - /* 115 */ {"var115", "undefined"}, - /* 116 */ {"var116", "undefined"}, - /* 117 */ {"var117", "undefined"}, - /* 118 */ {"var118", "undefined"}, - /* 119 */ {"var119", "undefined"}, - /* 120 */ {"var120", "undefined"}, - /* 121 */ {"var121", "undefined"}, - /* 122 */ {"var122", "undefined"}, - /* 123 */ {"var123", "undefined"}, - /* 124 */ {"var124", "undefined"}, - /* 125 */ {"var125", "undefined"}, - /* 126 */ {"var126", "undefined"}, - /* 127 */ {"var127", "undefined"}, - /* 128 */ {"var128", "undefined"}, - /* 129 */ {"var129", "undefined"}, - /* 130 */ {"var130", "undefined"}, - /* 131 */ {"U10N", "Neutral wind at 10 m x-component [m s**-1]"}, - /* 132 */ {"V10N", "Neutral wind at 10 m y-component [m s**-1]"}, - /* 133 */ {"var133", "undefined"}, - /* 134 */ {"VTNOWD", "V-tendency from non-orographic wave drag [m s**-2]"}, - /* 135 */ {"var135", "undefined"}, - /* 136 */ {"UTNOWD", "U-tendency from non-orographic wave drag [m s**-2]"}, - /* 137 */ {"var137", "undefined"}, - /* 138 */ {"var138", "undefined"}, - /* 139 */ {"ST", "Soil Temperature [K]"}, - /* 140 */ {"var140", "undefined"}, - /* 141 */ {"SD", "Snow Depth water equivalent [m]"}, - /* 142 */ {"var142", "undefined"}, - /* 143 */ {"var143", "undefined"}, - /* 144 */ {"SF", "Snow Fall water equivalent [kg m**-2]"}, - /* 145 */ {"var145", "undefined"}, - /* 146 */ {"var146", "undefined"}, - /* 147 */ {"var147", "undefined"}, - /* 148 */ {"var148", "undefined"}, + /* 142 */ {"LSP", "Large scale precipitation m s**-1"}, + /* 143 */ {"CP", "Convective precipitation m s**-1"}, + /* 144 */ {"SF", "Snowfall (convective + stratiform) m of water equivalent s**-1"}, + /* 145 */ {"BLD", "Boundary layer dissipation W m**-2"}, + /* 146 */ {"SSHF", "Surface sensible heat flux W m**-2"}, + /* 147 */ {"SLHF", "Surface latent heat flux W m**-2"}, + /* 148 */ {"SNR", "Surface net radiation W m**-2"}, /* 149 */ {"var149", "undefined"}, /* 150 */ {"var150", "undefined"}, /* 151 */ {"var151", "undefined"}, /* 152 */ {"var152", "undefined"}, - /* 153 */ {"var153", "undefined"}, - /* 154 */ {"var154", "undefined"}, + /* 153 */ {"SWHR", "Short-wave heating rate K s**-1"}, + /* 154 */ {"LWHR", "Long-wave heating rate K s**-1"}, /* 155 */ {"var155", "undefined"}, /* 156 */ {"var156", "undefined"}, /* 157 */ {"var157", "undefined"}, @@ -9673,40 +7599,40 @@ const struct ParmTable parm_table_ecmwf_228[256] = { /* 161 */ {"var161", "undefined"}, /* 162 */ {"var162", "undefined"}, /* 163 */ {"var163", "undefined"}, - /* 164 */ {"TCC", "Total Cloud Cover [%]"}, + /* 164 */ {"var164", "undefined"}, /* 165 */ {"var165", "undefined"}, /* 166 */ {"var166", "undefined"}, /* 167 */ {"var167", "undefined"}, /* 168 */ {"var168", "undefined"}, - /* 169 */ {"var169", "undefined"}, - /* 170 */ {"CAP", "Field capacity [kg m**-3]"}, - /* 171 */ {"WILT", "Wilting point [kg m**-3]"}, + /* 169 */ {"SSRD", "Surface solar radiation downwards W m**-2"}, + /* 170 */ {"var170", "undefined"}, + /* 171 */ {"var171", "undefined"}, /* 172 */ {"var172", "undefined"}, /* 173 */ {"var173", "undefined"}, /* 174 */ {"var174", "undefined"}, - /* 175 */ {"var175", "undefined"}, - /* 176 */ {"var176", "undefined"}, - /* 177 */ {"var177", "undefined"}, - /* 178 */ {"var178", "undefined"}, - /* 179 */ {"var179", "undefined"}, - /* 180 */ {"var180", "undefined"}, - /* 181 */ {"var181", "undefined"}, - /* 182 */ {"var182", "undefined"}, + /* 175 */ {"STRD", "Surface thermal radiation downwards W m**-2"}, + /* 176 */ {"SSR", "Surface solar radiation W m**-2"}, + /* 177 */ {"STR", "Surface thermal radiation W m**-2"}, + /* 178 */ {"TSR", "Top solar radiation W m**-2"}, + /* 179 */ {"TTR", "Top thermal radiation W m-2"}, + /* 180 */ {"EWSS", "East-West surface stress N m**-2"}, + /* 181 */ {"NSSS", "North-South surface stress N m**-2"}, + /* 182 */ {"E", "Evaporation m of water s**-1"}, /* 183 */ {"var183", "undefined"}, /* 184 */ {"var184", "undefined"}, /* 185 */ {"var185", "undefined"}, /* 186 */ {"var186", "undefined"}, /* 187 */ {"var187", "undefined"}, /* 188 */ {"var188", "undefined"}, - /* 189 */ {"var189", "undefined"}, + /* 189 */ {"SUND", "Sunshine duration"}, /* 190 */ {"var190", "undefined"}, /* 191 */ {"var191", "undefined"}, /* 192 */ {"var192", "undefined"}, /* 193 */ {"var193", "undefined"}, /* 194 */ {"var194", "undefined"}, - /* 195 */ {"var195", "undefined"}, - /* 196 */ {"var196", "undefined"}, - /* 197 */ {"var197", "undefined"}, + /* 195 */ {"LGWS", "Latitudinal component of gravity wave stress N m**-2"}, + /* 196 */ {"MGWS", "Meridional component of gravity wave stress N m**-2"}, + /* 197 */ {"GWD", "Gravity wave dissipation W m**-2"}, /* 198 */ {"var198", "undefined"}, /* 199 */ {"var199", "undefined"}, /* 200 */ {"var200", "undefined"}, @@ -9714,14 +7640,14 @@ const struct ParmTable parm_table_ecmwf_228[256] = { /* 202 */ {"var202", "undefined"}, /* 203 */ {"var203", "undefined"}, /* 204 */ {"var204", "undefined"}, - /* 205 */ {"var205", "undefined"}, + /* 205 */ {"RO", "Runoff m s**-1"}, /* 206 */ {"var206", "undefined"}, /* 207 */ {"var207", "undefined"}, - /* 208 */ {"var208", "undefined"}, - /* 209 */ {"var209", "undefined"}, - /* 210 */ {"var210", "undefined"}, - /* 211 */ {"var211", "undefined"}, - /* 212 */ {"var212", "undefined"}, + /* 208 */ {"TSRC", "Top net solar radiation, clear sky W m**-2"}, + /* 209 */ {"TTRC", "Top net thermal radiation, clear sky W m**-2"}, + /* 210 */ {"SSRC", "Surface net solar radiation, clear sky W m**-2"}, + /* 211 */ {"STRC", "Surface net thermal radiation, clear sky W m**-2"}, + /* 212 */ {"SI", "Solar insolation W m**-2"}, /* 213 */ {"var213", "undefined"}, /* 214 */ {"var214", "undefined"}, /* 215 */ {"var215", "undefined"}, @@ -9737,7 +7663,7 @@ const struct ParmTable parm_table_ecmwf_228[256] = { /* 225 */ {"var225", "undefined"}, /* 226 */ {"var226", "undefined"}, /* 227 */ {"var227", "undefined"}, - /* 228 */ {"TP", "Total Precipitation [kg m**-2]"}, + /* 228 */ {"TP", "Total precipitation m s**-1"}, /* 229 */ {"var229", "undefined"}, /* 230 */ {"var230", "undefined"}, /* 231 */ {"var231", "undefined"}, @@ -9748,8 +7674,8 @@ const struct ParmTable parm_table_ecmwf_228[256] = { /* 236 */ {"var236", "undefined"}, /* 237 */ {"var237", "undefined"}, /* 238 */ {"var238", "undefined"}, - /* 239 */ {"var239", "undefined"}, - /* 240 */ {"var240", "undefined"}, + /* 239 */ {"CSF", "Convective snowfall m of water equivalent s**-1"}, + /* 240 */ {"LSF", "Large-scale snowfall m of water equivalent s**-1"}, /* 241 */ {"var241", "undefined"}, /* 242 */ {"var242", "undefined"}, /* 243 */ {"var243", "undefined"}, @@ -9767,1045 +7693,3118 @@ const struct ParmTable parm_table_ecmwf_228[256] = { /* 255 */ {"var255", "undefined"}, }; -const struct ParmTable parm_table_nceptab_129[256] = { - /* 0 */ {"var0", "undefined"}, - /* 1 */ {"PRES", "Pressure [Pa]"}, - /* 2 */ {"PRMSL", "Pressure reduced to MSL [Pa]"}, - /* 3 */ {"PTEND", "Pressure tendency [Pa/s]"}, - /* 4 */ {"PVORT", "Pot. vorticity [km^2/kg/s]"}, - /* 5 */ {"ICAHT", "ICAO Standard Atmosphere Reference Height [M]"}, - /* 6 */ {"GP", "Geopotential [m^2/s^2]"}, - /* 7 */ {"HGT", "Geopotential height [gpm]"}, - /* 8 */ {"DIST", "Geometric height [m]"}, - /* 9 */ {"HSTDV", "Std dev of height [m]"}, - /* 10 */ {"TOZNE", "Total ozone [Dobson]"}, - /* 11 */ {"TMP", "Temp. [K]"}, - /* 12 */ {"VTMP", "Virtual temp. [K]"}, - /* 13 */ {"POT", "Potential temp. [K]"}, - /* 14 */ {"EPOT", "Pseudo-adiabatic pot. temp. [K]"}, - /* 15 */ {"TMAX", "Max. temp. [K]"}, - /* 16 */ {"TMIN", "Min. temp. [K]"}, - /* 17 */ {"DPT", "Dew point temp. [K]"}, - /* 18 */ {"DEPR", "Dew point depression [K]"}, - /* 19 */ {"LAPR", "Lapse rate [K/m]"}, - /* 20 */ {"VIS", "Visibility [m]"}, - /* 21 */ {"RDSP1", "Radar spectra (1) [non-dim]"}, - /* 22 */ {"RDSP2", "Radar spectra (2) [non-dim]"}, - /* 23 */ {"RDSP3", "Radar spectra (3) [non-dim]"}, - /* 24 */ {"PLI", "Parcel lifted index (to 500 hPa) [K]"}, - /* 25 */ {"TMPA", "Temp. anomaly [K]"}, - /* 26 */ {"PRESA", "Pressure anomaly [Pa]"}, - /* 27 */ {"GPA", "Geopotential height anomaly [gpm]"}, - /* 28 */ {"WVSP1", "Wave spectra (1) [non-dim]"}, - /* 29 */ {"WVSP2", "Wave spectra (2) [non-dim]"}, - /* 30 */ {"WVSP3", "Wave spectra (3) [non-dim]"}, - /* 31 */ {"WDIR", "Wind direction [deg]"}, - /* 32 */ {"WIND", "Wind speed [m/s]"}, - /* 33 */ {"UGRD", "u wind [m/s]"}, - /* 34 */ {"VGRD", "v wind [m/s]"}, - /* 35 */ {"STRM", "Stream function [m^2/s]"}, - /* 36 */ {"VPOT", "Velocity potential [m^2/s]"}, - /* 37 */ {"MNTSF", "Montgomery stream function [m^2/s^2]"}, - /* 38 */ {"SGCVV", "Sigma coord. vertical velocity [/s]"}, - /* 39 */ {"VVEL", "Pressure vertical velocity [Pa/s]"}, - /* 40 */ {"DZDT", "Geometric vertical velocity [m/s]"}, - /* 41 */ {"ABSV", "Absolute vorticity [/s]"}, - /* 42 */ {"ABSD", "Absolute divergence [/s]"}, - /* 43 */ {"RELV", "Relative vorticity [/s]"}, - /* 44 */ {"RELD", "Relative divergence [/s]"}, - /* 45 */ {"VUCSH", "Vertical u shear [/s]"}, - /* 46 */ {"VVCSH", "Vertical v shear [/s]"}, - /* 47 */ {"DIRC", "Direction of current [deg]"}, - /* 48 */ {"SPC", "Speed of current [m/s]"}, - /* 49 */ {"UOGRD", "u of current [m/s]"}, - /* 50 */ {"VOGRD", "v of current [m/s]"}, - /* 51 */ {"SPFH", "Specific humidity [kg/kg]"}, - /* 52 */ {"RH", "Relative humidity [%]"}, - /* 53 */ {"MIXR", "Humidity mixing ratio [kg/kg]"}, - /* 54 */ {"PWAT", "Precipitable water [kg/m^2]"}, - /* 55 */ {"VAPP", "Vapor pressure [Pa]"}, - /* 56 */ {"SATD", "Saturation deficit [Pa]"}, - /* 57 */ {"EVP", "Evaporation [kg/m^2]"}, - /* 58 */ {"CICE", "Cloud Ice [kg/m^2]"}, - /* 59 */ {"PRATE", "Precipitation rate [kg/m^2/s]"}, - /* 60 */ {"TSTM", "Thunderstorm probability [%]"}, - /* 61 */ {"APCP", "Total precipitation [kg/m^2]"}, - /* 62 */ {"NCPCP", "Large scale precipitation [kg/m^2]"}, - /* 63 */ {"ACPCP", "Convective precipitation [kg/m^2]"}, - /* 64 */ {"SRWEQ", "Snowfall rate water equiv. [kg/m^2/s]"}, - /* 65 */ {"WEASD", "Accum. snow [kg/m^2]"}, - /* 66 */ {"SNOD", "Snow depth [m]"}, - /* 67 */ {"MIXHT", "Mixed layer depth [m]"}, - /* 68 */ {"TTHDP", "Transient thermocline depth [m]"}, - /* 69 */ {"MTHD", "Main thermocline depth [m]"}, - /* 70 */ {"MTHA", "Main thermocline anomaly [m]"}, - /* 71 */ {"TCDC", "Total cloud cover [%]"}, - /* 72 */ {"CDCON", "Convective cloud cover [%]"}, - /* 73 */ {"LCDC", "Low level cloud cover [%]"}, - /* 74 */ {"MCDC", "Mid level cloud cover [%]"}, - /* 75 */ {"HCDC", "High level cloud cover [%]"}, - /* 76 */ {"CWAT", "Cloud water [kg/m^2]"}, - /* 77 */ {"BLI", "Best lifted index (to 500 hPa) [K]"}, - /* 78 */ {"SNOC", "Convective snow [kg/m^2]"}, - /* 79 */ {"SNOL", "Large scale snow [kg/m^2]"}, - /* 80 */ {"WTMP", "Water temp. [K]"}, - /* 81 */ {"LAND", "Land cover (land=1;sea=0) [fraction]"}, - /* 82 */ {"DSLM", "Deviation of sea level from mean [m]"}, - /* 83 */ {"SFCR", "Surface roughness [m]"}, - /* 84 */ {"ALBDO", "Albedo [%]"}, - /* 85 */ {"TSOIL", "Soil temp. [K]"}, - /* 86 */ {"SOILM", "Soil moisture content [kg/m^2]"}, - /* 87 */ {"VEG", "Vegetation [%]"}, - /* 88 */ {"SALTY", "Salinity [kg/kg]"}, - /* 89 */ {"DEN", "Density [kg/m^3]"}, - /* 90 */ {"WATR", "Water runoff [kg/m^2]"}, - /* 91 */ {"ICEC", "Ice concentration (ice=1;no ice=0) [fraction]"}, - /* 92 */ {"ICETK", "Ice thickness [m]"}, - /* 93 */ {"DICED", "Direction of ice drift [deg]"}, - /* 94 */ {"SICED", "Speed of ice drift [m/s]"}, - /* 95 */ {"UICE", "u of ice drift [m/s]"}, - /* 96 */ {"VICE", "v of ice drift [m/s]"}, - /* 97 */ {"ICEG", "Ice growth rate [m/s]"}, - /* 98 */ {"ICED", "Ice divergence [/s]"}, - /* 99 */ {"SNOM", "Snow melt [kg/m^2]"}, - /* 100 */ {"HTSGW", "Sig height of wind waves and swell [m]"}, - /* 101 */ {"WVDIR", "Direction of wind waves [deg]"}, - /* 102 */ {"WVHGT", "Sig height of wind waves [m]"}, - /* 103 */ {"WVPER", "Mean period of wind waves [s]"}, - /* 104 */ {"SWDIR", "Direction of swell waves [deg]"}, - /* 105 */ {"SWELL", "Sig height of swell waves [m]"}, - /* 106 */ {"SWPER", "Mean period of swell waves [s]"}, - /* 107 */ {"DIRPW", "Primary wave direction [deg]"}, - /* 108 */ {"PERPW", "Primary wave mean period [s]"}, - /* 109 */ {"DIRSW", "Secondary wave direction [deg]"}, - /* 110 */ {"PERSW", "Secondary wave mean period [s]"}, - /* 111 */ {"NSWRS", "Net short wave (surface) [W/m^2]"}, - /* 112 */ {"NLWRS", "Net long wave (surface) [W/m^2]"}, - /* 113 */ {"NSWRT", "Net short wave (top) [W/m^2]"}, - /* 114 */ {"NLWRT", "Net long wave (top) [W/m^2]"}, - /* 115 */ {"LWAVR", "Long wave [W/m^2]"}, - /* 116 */ {"SWAVR", "Short wave [W/m^2]"}, - /* 117 */ {"GRAD", "Global radiation [W/m^2]"}, - /* 118 */ {"BRTMP", "Brightness temperature [K]"}, - /* 119 */ {"LWRAD", "Radiance with respect to wave no. [W/m/sr]"}, - /* 120 */ {"SWRAD", "Radiance with respect ot wave len. [W/m^3/sr]"}, - /* 121 */ {"LHTFL", "Latent heat flux [W/m^2]"}, - /* 122 */ {"SHTFL", "Sensible heat flux [W/m^2]"}, - /* 123 */ {"BLYDP", "Boundary layer dissipation [W/m^2]"}, - /* 124 */ {"UFLX", "Zonal momentum flux [N/m^2]"}, - /* 125 */ {"VFLX", "Meridional momentum flux [N/m^2]"}, - /* 126 */ {"WMIXE", "Wind mixing energy [J]"}, - /* 127 */ {"IMGD", "Image data []"}, - /* 128 */ {"PAOT", "Probability anomaly of temp [%]"}, - /* 129 */ {"PAOP", "Probability anomaly of precip [%]"}, - /* 130 */ {"CWR", "Probability of wetting rain > 0.1 in [%]"}, - /* 131 */ {"FRAIN", "Rain fraction of total liquid water []"}, - /* 132 */ {"FICE", "Ice fraction of total condensate []"}, - /* 133 */ {"FRIME", "Rime factor []"}, - /* 134 */ {"CUEFI", "Convective cloud efficiency []"}, - /* 135 */ {"TCOND", "Total condensate [kg/kg]"}, - /* 136 */ {"TCOLW", "Total column cloud water [kg/m/m]"}, - /* 137 */ {"TCOLI", "Total column cloud ice [kg/m/m]"}, - /* 138 */ {"TCOLR", "Total column rain [kg/m/m]"}, - /* 139 */ {"TCOLS", "Total column snow [kg/m/m]"}, - /* 140 */ {"TCOLC", "Total column condensate [kg/m/m]"}, - /* 141 */ {"PLPL", "Pressure of level from which parcel was lifted [Pa]"}, - /* 142 */ {"HLPL", "Height of level from which parcel was lifted [m]"}, - /* 143 */ {"CEMS", "Cloud Emissivity [fraction]"}, - /* 144 */ {"COPD", "Cloud Optical Depth [non-dim]"}, - /* 145 */ {"PSIZ", "Effective Particle size [microns]"}, - /* 146 */ {"TCWAT", "Total Water Cloud [%]"}, - /* 147 */ {"TCICE", "Total Ice Cloud [%]"}, - /* 148 */ {"WDIF", "Wind Difference [m/s]"}, - /* 149 */ {"WSTP", "Wave Steepness [non-dim]"}, - /* 150 */ {"PTAN", "Probability of Temp. above normal [%]"}, - /* 151 */ {"PTNN", "Probability of Temp. near normal [%]"}, - /* 152 */ {"PTBN", "Probability of Temp. below normal [%]"}, - /* 153 */ {"PPAN", "Probability of Precip. above normal [%]"}, - /* 154 */ {"PPNN", "Probability of Precip. near normal [%]"}, - /* 155 */ {"PPBN", "Probability of Precip. below normal [%]"}, - /* 156 */ {"PMTC", "Particulate matter (coarse) [ug/m^3]"}, - /* 157 */ {"PMTF", "Particulate matter (fine) [ug/m^3]"}, - /* 158 */ {"AETMP", "Analysis Error of Temperature [K]"}, - /* 159 */ {"AEDPT", "Analysis Error of Dew Point [K]"}, - /* 160 */ {"AESPH", "Analysis Error of Specific Humidity [kg/kg] wne"}, - /* 161 */ {"AEUWD", "Analysis Error of U-wind [m/s]"}, - /* 162 */ {"AEVWD", "Analysis Error of V-wind [m/s]"}, - /* 163 */ {"LPMTF", "Particulate matter (fine) [log10(ug/m^3)]"}, - /* 164 */ {"LIPMF", "Integrated Column Particulate matter (fine) [log10(ug/m^2)] wne"}, - /* 165 */ {"REFZR", "Derived radar reflectivity backscatter from rain [mm^6/m^3]"}, - /* 166 */ {"REFZI", "Derived radar reflectivity backscatter from ice [mm^6/m^3]"}, - /* 167 */ {"REFZC", "Derived radar reflectivity backscatter from parameterized convection [mm^6/m^3]"}, - /* 168 */ {"TCLSW", "Integrated supercooled liquid water [kg/m^2]"}, - /* 169 */ {"TCOLM", "Total Column Integrated Melting Ice [kg/m^2]"}, - /* 170 */ {"ELRDI", "Ellrod Index [non-dim]"}, - /* 171 */ {"TSEC", "Seconds prior to initial reference time [sec]"}, - /* 172 */ {"TSECA", "Seconds after initial reference time [sec]"}, - /* 173 */ {"NUM", "Number of samples/observations [non-dim]"}, - /* 174 */ {"AEPRS", "Analysis Error of Pressure [Pa]"}, - /* 175 */ {"ICSEV", "Icing Severity [non-dim]"}, - /* 176 */ {"ICPRB", "Icing Probability [non-dim]"}, - /* 177 */ {"LAVNI", "Low-level Aviation Interest [non-dim]"}, - /* 178 */ {"HAVNI", "High-level Aviation Interest [non-dim]"}, - /* 179 */ {"FLGHT", "Flight Category [non-dim]"}, - /* 180 */ {"OZCON", "Ozone concentration [ppb]"}, - /* 181 */ {"OZCAT", "Categorical ozone concentration [?]"}, - /* 182 */ {"VEDH", "vertical heat eddy diffusivity [m^2/s]"}, - /* 183 */ {"SIGV", "Sigma level value [non-dim]"}, - /* 184 */ {"EWGT", "Ensemble Weight [non-dim]"}, - /* 185 */ {"CICEL", "Confidence indicator - Ceiling [non-dim]"}, - /* 186 */ {"CIVIS", "Confidence indicator - Visibility [non-dim]"}, - /* 187 */ {"CIFLT", "Confidence indicator - Flight Category [non-dim]"}, - /* 188 */ {"LAVV", "Latitude of V wind component of velocity [deg]"}, - /* 189 */ {"LOVV", "Longitude of V wind component of velocity [deg]"}, - /* 190 */ {"USCT", "Scatterometer est. U wind component [m/s]"}, - /* 191 */ {"VSCT", "Scatterometer est. V wind component [m/s]"}, - /* 192 */ {"LAUV", "Latitude of U wind component of velocity [deg]"}, - /* 193 */ {"LOUV", "Longitude of U wind component of velocity [deg]"}, - /* 194 */ {"TCHP", "Tropical Cyclone Heat Potential [J/m^2]"}, - /* 195 */ {"DBSS", "Geometric Depth Below Sea Surface [m]"}, - /* 196 */ {"ODHA", "Ocean Dynamic Heat Anomaly [dynamic m]"}, - /* 197 */ {"OHC", "Ocean Heat Content [J/m^2]"}, - /* 198 */ {"SSHG", "Sea Surface Height Relative to Geoid [m]"}, - /* 199 */ {"SLTFL", "Salt flux [g/cm^2/s]"}, - /* 200 */ {"DUVB", "UV-B Downward Solar Flux [W/m^2]"}, - /* 201 */ {"CDUVB", "Clear Sky UV-B Downward Solar Flux [W/m^2]"}, - /* 202 */ {"THFLX", "Total downward heat flux at surface [W/m^2]"}, - /* 203 */ {"UVAR", "U velocity variance [m^2/s^2]"}, - /* 204 */ {"VVAR", "V velocity variance [m^2/s^2]"}, - /* 205 */ {"UVVCC", "UV Velocity Cross Correlation [m^2/s^2]"}, - /* 206 */ {"MCLS", "Meteorological Correlation Length Scale [m]"}, - /* 207 */ {"LAPP", "Latitude of pressure point [deg]"}, - /* 208 */ {"LOPP", "Longitude of pressure point [deg]"}, - /* 209 */ {"var209", "undefined"}, - /* 210 */ {"REFO", "Observed radar reflectivity [dbZ]"}, - /* 211 */ {"REFD", "Derived radar reflectivity [dbZ]"}, - /* 212 */ {"REFC", "Maximum/Composite radar reflectivity [dbZ]"}, - /* 213 */ {"SBT122", "Simulated Brightness Temperature for GOES12, Channel 2 [K]"}, - /* 214 */ {"SBT123", "Simulated Brightness Temperature for GOES12, Channel 3 [K]"}, - /* 215 */ {"SBT124", "Simulated Brightness Temperature for GOES12, Channel 4 [K]"}, - /* 216 */ {"SBT125", "Simulated Brightness Temperature for GOES12, Channel 5 [K]"}, - /* 217 */ {"MINRH", "Minimum Relative Humumidity [%]"}, - /* 218 */ {"MAXRH", "Maximum Relative Humumidity [%]"}, - /* 219 */ {"CEIL", "Ceiling [m]"}, - /* 220 */ {"PBLREG", "Planetary boundary layer regime []"}, - /* 221 */ {"SBC123", "Simulated brightness counts for GOES12, Channel 3 [byte]"}, - /* 222 */ {"SBC124", "Simulated brightness counts for GOES12, Channel 4 [byte]"}, - /* 223 */ {"RPRATE", "Rain precipitation rate [kg/m^2/s]"}, - /* 224 */ {"SPRATE", "Snow precipitation rate [kg/m^2/s]"}, - /* 225 */ {"FPRATE", "Freezing rain precipitation rate [kg/m^2/s]"}, - /* 226 */ {"IPRATE", "Ice pellets precipitation rate [kg/m^2/s]"}, - /* 227 */ {"UPHL", "Updraft Helicity [m^2/s^2]"}, - /* 228 */ {"SURGE", "Storm Surge [m]"}, - /* 229 */ {"ETSRG", "Extra-tropical storm Surge [m]"}, - /* 230 */ {"RHPW", "Relative humidity with respect to precip water [%]"}, - /* 231 */ {"OZMAX1", "Ozone daily max from 1-hour ave [ppbV]"}, - /* 232 */ {"OZMAX8", "Ozone daily max from 8-hour ave [ppbV]"}, - /* 233 */ {"PDMAX1", "PM 2.5 daily max from 1-hour ave [ug/m^3]"}, - /* 234 */ {"PDMAX24", "PM 2.5 daily max from 24-hour ave [ug/m^3]"}, - /* 235 */ {"MAXREF", "Hourly max of sim. reflect at 1km AGL [dbZ]"}, - /* 236 */ {"MXUPHL", "Hourly max updraft helicity 2-5km AGL [m^2/s^2]"}, - /* 237 */ {"MAXUVV", "Hourly max upward vert vel in lowest 400mb [m/s]"}, - /* 238 */ {"MAXDVV", "Hourly max downward vert fel in lowest 400mb [m/s]"}, - /* 239 */ {"MAXVIG", "Hourly max column graupel [kg/m^2]"}, - /* 240 */ {"RETOP", "Radar echo top (18.3 dbZ) [m]"}, - /* 241 */ {"VRATE", "Ventilation rate [m^2/s]"}, - /* 242 */ {"TCSRG20", "20% tropical cyclone storm exceedance [m]"}, - /* 243 */ {"TCSRG30", "30% tropical cyclone storm exceedance [m]"}, - /* 244 */ {"TCSRG40", "40% tropical cyclone storm exceedance [m]"}, - /* 245 */ {"TCSRG50", "50% tropical cyclone storm exceedance [m]"}, - /* 246 */ {"TCSRG60", "60% tropical cyclone storm exceedance [m]"}, - /* 247 */ {"TCSRG70", "70% tropical cyclone storm exceedance [m]"}, - /* 248 */ {"TCSRG80", "80% tropical cyclone storm exceedance [m]"}, - /* 249 */ {"TCSRG90", "90% tropical cyclone storm exceedance [m]"}, - /* 250 */ {"HINDEX", "Haines index []"}, - /* 251 */ {"DIFTEN", "Difference between 2 states in total energy norm [J/kg]"}, - /* 252 */ {"PSPCP", "Pseudo-precipitation [kg/m^2]"}, - /* 253 */ {"MAXUW", "U of hourly max 10m wind speed [m/s]"}, - /* 254 */ {"MAXVW", "V of hourly max 10m wind speed [m/s]"}, - /* 255 */ {"var255", "undefined"}, + +const struct ParmTable parm_table_ecmwf_173[256] = { + /* 0 */ {"var0", "undefined"}, + /* 1 */ {"var1", "undefined"}, + /* 2 */ {"var2", "undefined"}, + /* 3 */ {"var3", "undefined"}, + /* 4 */ {"var4", "undefined"}, + /* 5 */ {"var5", "undefined"}, + /* 6 */ {"var6", "undefined"}, + /* 7 */ {"var7", "undefined"}, + /* 8 */ {"var8", "undefined"}, + /* 9 */ {"var9", "undefined"}, + /* 10 */ {"var10", "undefined"}, + /* 11 */ {"var11", "undefined"}, + /* 12 */ {"var12", "undefined"}, + /* 13 */ {"var13", "undefined"}, + /* 14 */ {"var14", "undefined"}, + /* 15 */ {"var15", "undefined"}, + /* 16 */ {"var16", "undefined"}, + /* 17 */ {"var17", "undefined"}, + /* 18 */ {"var18", "undefined"}, + /* 19 */ {"var19", "undefined"}, + /* 20 */ {"var20", "undefined"}, + /* 21 */ {"var21", "undefined"}, + /* 22 */ {"var22", "undefined"}, + /* 23 */ {"var23", "undefined"}, + /* 24 */ {"var24", "undefined"}, + /* 25 */ {"var25", "undefined"}, + /* 26 */ {"var26", "undefined"}, + /* 27 */ {"var27", "undefined"}, + /* 28 */ {"var28", "undefined"}, + /* 29 */ {"var29", "undefined"}, + /* 30 */ {"var30", "undefined"}, + /* 31 */ {"var31", "undefined"}, + /* 32 */ {"var32", "undefined"}, + /* 33 */ {"var33", "undefined"}, + /* 34 */ {"var34", "undefined"}, + /* 35 */ {"var35", "undefined"}, + /* 36 */ {"var36", "undefined"}, + /* 37 */ {"var37", "undefined"}, + /* 38 */ {"var38", "undefined"}, + /* 39 */ {"var39", "undefined"}, + /* 40 */ {"var40", "undefined"}, + /* 41 */ {"var41", "undefined"}, + /* 42 */ {"var42", "undefined"}, + /* 43 */ {"var43", "undefined"}, + /* 44 */ {"var44", "Snow evaporation anomaly [m of water s**-1]"}, + /* 45 */ {"var45", "Snowmelt anomaly [m of water s**-1]"}, + /* 46 */ {"var46", "undefined"}, + /* 47 */ {"var47", "undefined"}, + /* 48 */ {"var48", "Magnitude of surface stress anomaly [N m**-2]"}, + /* 49 */ {"var49", "undefined"}, + /* 50 */ {"var50", "Large-scale precipitation fraction anomaly []"}, + /* 51 */ {"var51", "undefined"}, + /* 52 */ {"var52", "undefined"}, + /* 53 */ {"var53", "undefined"}, + /* 54 */ {"var54", "undefined"}, + /* 55 */ {"var55", "undefined"}, + /* 56 */ {"var56", "undefined"}, + /* 57 */ {"var57", "undefined"}, + /* 58 */ {"var58", "undefined"}, + /* 59 */ {"var59", "undefined"}, + /* 60 */ {"var60", "undefined"}, + /* 61 */ {"var61", "undefined"}, + /* 62 */ {"var62", "undefined"}, + /* 63 */ {"var63", "undefined"}, + /* 64 */ {"var64", "undefined"}, + /* 65 */ {"var65", "undefined"}, + /* 66 */ {"var66", "undefined"}, + /* 67 */ {"var67", "undefined"}, + /* 68 */ {"var68", "undefined"}, + /* 69 */ {"var69", "undefined"}, + /* 70 */ {"var70", "undefined"}, + /* 71 */ {"var71", "undefined"}, + /* 72 */ {"var72", "undefined"}, + /* 73 */ {"var73", "undefined"}, + /* 74 */ {"var74", "undefined"}, + /* 75 */ {"var75", "undefined"}, + /* 76 */ {"var76", "undefined"}, + /* 77 */ {"var77", "undefined"}, + /* 78 */ {"var78", "undefined"}, + /* 79 */ {"var79", "undefined"}, + /* 80 */ {"var80", "undefined"}, + /* 81 */ {"var81", "undefined"}, + /* 82 */ {"var82", "undefined"}, + /* 83 */ {"var83", "undefined"}, + /* 84 */ {"var84", "undefined"}, + /* 85 */ {"var85", "undefined"}, + /* 86 */ {"var86", "undefined"}, + /* 87 */ {"var87", "undefined"}, + /* 88 */ {"var88", "undefined"}, + /* 89 */ {"var89", "undefined"}, + /* 90 */ {"var90", "undefined"}, + /* 91 */ {"var91", "undefined"}, + /* 92 */ {"var92", "undefined"}, + /* 93 */ {"var93", "undefined"}, + /* 94 */ {"var94", "undefined"}, + /* 95 */ {"var95", "undefined"}, + /* 96 */ {"var96", "undefined"}, + /* 97 */ {"var97", "undefined"}, + /* 98 */ {"var98", "undefined"}, + /* 99 */ {"var99", "undefined"}, + /* 100 */ {"var100", "undefined"}, + /* 101 */ {"var101", "undefined"}, + /* 102 */ {"var102", "undefined"}, + /* 103 */ {"var103", "undefined"}, + /* 104 */ {"var104", "undefined"}, + /* 105 */ {"var105", "undefined"}, + /* 106 */ {"var106", "undefined"}, + /* 107 */ {"var107", "undefined"}, + /* 108 */ {"var108", "undefined"}, + /* 109 */ {"var109", "undefined"}, + /* 110 */ {"var110", "undefined"}, + /* 111 */ {"var111", "undefined"}, + /* 112 */ {"var112", "undefined"}, + /* 113 */ {"var113", "undefined"}, + /* 114 */ {"var114", "undefined"}, + /* 115 */ {"var115", "undefined"}, + /* 116 */ {"var116", "undefined"}, + /* 117 */ {"var117", "undefined"}, + /* 118 */ {"var118", "undefined"}, + /* 119 */ {"var119", "undefined"}, + /* 120 */ {"var120", "undefined"}, + /* 121 */ {"var121", "undefined"}, + /* 122 */ {"var122", "undefined"}, + /* 123 */ {"var123", "undefined"}, + /* 124 */ {"var124", "undefined"}, + /* 125 */ {"var125", "undefined"}, + /* 126 */ {"var126", "undefined"}, + /* 127 */ {"var127", "undefined"}, + /* 128 */ {"var128", "undefined"}, + /* 129 */ {"var129", "undefined"}, + /* 130 */ {"var130", "undefined"}, + /* 131 */ {"var131", "undefined"}, + /* 132 */ {"var132", "undefined"}, + /* 133 */ {"var133", "undefined"}, + /* 134 */ {"var134", "undefined"}, + /* 135 */ {"var135", "undefined"}, + /* 136 */ {"var136", "undefined"}, + /* 137 */ {"var137", "undefined"}, + /* 138 */ {"var138", "undefined"}, + /* 139 */ {"var139", "undefined"}, + /* 140 */ {"var140", "undefined"}, + /* 141 */ {"var141", "undefined"}, + /* 142 */ {"var142", "Stratiform precipitation (Large-scale precipitation) anomaly [m s**-1]"}, + /* 143 */ {"var143", "Convective precipitation anomaly [m s**-1]"}, + /* 144 */ {"SFARA", "Snowfall (convective + stratiform) anomalous rate of accumulation [m of water equivalent s**-1]"}, + /* 145 */ {"var145", "Boundary layer dissipation anomaly [W m**-2]"}, + /* 146 */ {"var146", "Surface sensible heat flux anomaly [W m**-2]"}, + /* 147 */ {"var147", "Surface latent heat flux anomaly [W m**-2]"}, + /* 148 */ {"var148", "undefined"}, + /* 149 */ {"var149", "Surface net radiation anomaly [W m**-2]"}, + /* 150 */ {"var150", "undefined"}, + /* 151 */ {"var151", "undefined"}, + /* 152 */ {"var152", "undefined"}, + /* 153 */ {"var153", "Short-wave heating rate anomaly [K s**-1]"}, + /* 154 */ {"var154", "Long-wave heating rate anomaly [K s**-1]"}, + /* 155 */ {"var155", "undefined"}, + /* 156 */ {"var156", "undefined"}, + /* 157 */ {"var157", "undefined"}, + /* 158 */ {"var158", "undefined"}, + /* 159 */ {"var159", "undefined"}, + /* 160 */ {"var160", "undefined"}, + /* 161 */ {"var161", "undefined"}, + /* 162 */ {"var162", "undefined"}, + /* 163 */ {"var163", "undefined"}, + /* 164 */ {"var164", "undefined"}, + /* 165 */ {"var165", "undefined"}, + /* 166 */ {"var166", "undefined"}, + /* 167 */ {"var167", "undefined"}, + /* 168 */ {"var168", "undefined"}, + /* 169 */ {"var169", "Surface solar radiation downwards anomaly [W m**-2]"}, + /* 170 */ {"var170", "undefined"}, + /* 171 */ {"var171", "undefined"}, + /* 172 */ {"var172", "undefined"}, + /* 173 */ {"var173", "undefined"}, + /* 174 */ {"var174", "undefined"}, + /* 175 */ {"var175", "Surface thermal radiation downwards anomaly [W m**-2]"}, + /* 176 */ {"var176", "Surface solar radiation anomaly [W m**-2]"}, + /* 177 */ {"var177", "Surface thermal radiation anomaly [W m**-2]"}, + /* 178 */ {"var178", "Top solar radiation anomaly [W m**-2]"}, + /* 179 */ {"var179", "Top thermal radiation anomaly [W m**-2]"}, + /* 180 */ {"var180", "East-West surface stress anomaly [N m**-2]"}, + /* 181 */ {"var181", "North-South surface stress anomaly [N m**-2]"}, + /* 182 */ {"var182", "Evaporation anomaly [m of water s**-1]"}, + /* 183 */ {"var183", "undefined"}, + /* 184 */ {"var184", "undefined"}, + /* 185 */ {"var185", "undefined"}, + /* 186 */ {"var186", "undefined"}, + /* 187 */ {"var187", "undefined"}, + /* 188 */ {"var188", "undefined"}, + /* 189 */ {"SUNDARA", "Sunshine duration anomalous rate of accumulation [dimensionless]"}, + /* 190 */ {"var190", "undefined"}, + /* 191 */ {"var191", "undefined"}, + /* 192 */ {"var192", "undefined"}, + /* 193 */ {"var193", "undefined"}, + /* 194 */ {"var194", "undefined"}, + /* 195 */ {"var195", "Latitudinal component of gravity wave stress anomaly [N m**-2]"}, + /* 196 */ {"var196", "Meridional component of gravity wave stress anomaly [N m**-2]"}, + /* 197 */ {"var197", "Gravity wave dissipation anomaly [W m**-2]"}, + /* 198 */ {"var198", "undefined"}, + /* 199 */ {"var199", "undefined"}, + /* 200 */ {"var200", "undefined"}, + /* 201 */ {"var201", "undefined"}, + /* 202 */ {"var202", "undefined"}, + /* 203 */ {"var203", "undefined"}, + /* 204 */ {"var204", "undefined"}, + /* 205 */ {"var205", "Runoff anomaly [m s**-1]"}, + /* 206 */ {"var206", "undefined"}, + /* 207 */ {"var207", "undefined"}, + /* 208 */ {"var208", "Top net solar radiation, clear sky anomaly [W m**-2]"}, + /* 209 */ {"var209", "Top net thermal radiation, clear sky anomaly [W m**-2]"}, + /* 210 */ {"var210", "Surface net solar radiation, clear sky anomaly [W m**-2]"}, + /* 211 */ {"var211", "Surface net thermal radiation, clear sky anomaly [W m**-2]"}, + /* 212 */ {"var212", "Solar insolation anomaly [W m**-2 s**-1]"}, + /* 213 */ {"var213", "undefined"}, + /* 214 */ {"var214", "undefined"}, + /* 215 */ {"var215", "undefined"}, + /* 216 */ {"var216", "undefined"}, + /* 217 */ {"var217", "undefined"}, + /* 218 */ {"var218", "undefined"}, + /* 219 */ {"var219", "undefined"}, + /* 220 */ {"var220", "undefined"}, + /* 221 */ {"var221", "undefined"}, + /* 222 */ {"var222", "undefined"}, + /* 223 */ {"var223", "undefined"}, + /* 224 */ {"var224", "undefined"}, + /* 225 */ {"var225", "undefined"}, + /* 226 */ {"var226", "undefined"}, + /* 227 */ {"var227", "undefined"}, + /* 228 */ {"TPARA", "Total precipitation anomalous rate of accumulation [m s**-1]"}, + /* 229 */ {"var229", "undefined"}, + /* 230 */ {"var230", "undefined"}, + /* 231 */ {"var231", "undefined"}, + /* 232 */ {"var232", "undefined"}, + /* 233 */ {"var233", "undefined"}, + /* 234 */ {"var234", "undefined"}, + /* 235 */ {"var235", "undefined"}, + /* 236 */ {"var236", "undefined"}, + /* 237 */ {"var237", "undefined"}, + /* 238 */ {"var238", "undefined"}, + /* 239 */ {"var239", "Convective snowfall anomaly [m of water equivalent s**-1]"}, + /* 240 */ {"var240", "Large-scale snowfall anomaly [m of water equivalent s**-1]"}, + /* 241 */ {"var241", "undefined"}, + /* 242 */ {"var242", "undefined"}, + /* 243 */ {"var243", "undefined"}, + /* 244 */ {"var244", "undefined"}, + /* 245 */ {"var245", "undefined"}, + /* 246 */ {"var246", "undefined"}, + /* 247 */ {"var247", "undefined"}, + /* 248 */ {"var248", "undefined"}, + /* 249 */ {"var249", "undefined"}, + /* 250 */ {"var250", "undefined"}, + /* 251 */ {"var251", "undefined"}, + /* 252 */ {"var252", "undefined"}, + /* 253 */ {"var253", "undefined"}, + /* 254 */ {"var254", "undefined"}, + /* 255 */ {"var255", "Indicates a missing value []"}, }; -const struct ParmTable parm_table_nceptab_140[256] = { - /* 0 */ {"var0", "undefined"}, - /* 1 */ {"PRES", "Pressure [Pa]"}, - /* 2 */ {"PRMSL", "Pressure reduced to MSL [Pa]"}, - /* 3 */ {"PTEND", "Pressure tendency [Pa/s]"}, - /* 4 */ {"PVORT", "Pot. vorticity [km^2/kg/s]"}, - /* 5 */ {"ICAHT", "ICAO Standard Atmosphere Reference Height [M]"}, - /* 6 */ {"GP", "Geopotential [m^2/s^2]"}, - /* 7 */ {"HGT", "Geopotential height [gpm]"}, - /* 8 */ {"DIST", "Geometric height [m]"}, - /* 9 */ {"HSTDV", "Std dev of height [m]"}, - /* 10 */ {"TOZNE", "Total ozone [Dobson]"}, - /* 11 */ {"TMP", "Temp. [K]"}, - /* 12 */ {"VTMP", "Virtual temp. [K]"}, - /* 13 */ {"POT", "Potential temp. [K]"}, - /* 14 */ {"EPOT", "Pseudo-adiabatic pot. temp. [K]"}, - /* 15 */ {"TMAX", "Max. temp. [K]"}, - /* 16 */ {"TMIN", "Min. temp. [K]"}, - /* 17 */ {"DPT", "Dew point temp. [K]"}, - /* 18 */ {"DEPR", "Dew point depression [K]"}, - /* 19 */ {"LAPR", "Lapse rate [K/m]"}, - /* 20 */ {"VIS", "Visibility [m]"}, - /* 21 */ {"RDSP1", "Radar spectra (1) [non-dim]"}, - /* 22 */ {"RDSP2", "Radar spectra (2) [non-dim]"}, - /* 23 */ {"RDSP3", "Radar spectra (3) [non-dim]"}, - /* 24 */ {"PLI", "Parcel lifted index (to 500 hPa) [K]"}, - /* 25 */ {"TMPA", "Temp. anomaly [K]"}, - /* 26 */ {"PRESA", "Pressure anomaly [Pa]"}, - /* 27 */ {"GPA", "Geopotential height anomaly [gpm]"}, - /* 28 */ {"WVSP1", "Wave spectra (1) [non-dim]"}, - /* 29 */ {"WVSP2", "Wave spectra (2) [non-dim]"}, - /* 30 */ {"WVSP3", "Wave spectra (3) [non-dim]"}, - /* 31 */ {"WDIR", "Wind direction [deg]"}, - /* 32 */ {"WIND", "Wind speed [m/s]"}, - /* 33 */ {"UGRD", "u wind [m/s]"}, - /* 34 */ {"VGRD", "v wind [m/s]"}, - /* 35 */ {"STRM", "Stream function [m^2/s]"}, - /* 36 */ {"VPOT", "Velocity potential [m^2/s]"}, - /* 37 */ {"MNTSF", "Montgomery stream function [m^2/s^2]"}, - /* 38 */ {"SGCVV", "Sigma coord. vertical velocity [/s]"}, - /* 39 */ {"VVEL", "Pressure vertical velocity [Pa/s]"}, - /* 40 */ {"DZDT", "Geometric vertical velocity [m/s]"}, - /* 41 */ {"ABSV", "Absolute vorticity [/s]"}, - /* 42 */ {"ABSD", "Absolute divergence [/s]"}, - /* 43 */ {"RELV", "Relative vorticity [/s]"}, - /* 44 */ {"RELD", "Relative divergence [/s]"}, - /* 45 */ {"VUCSH", "Vertical u shear [/s]"}, - /* 46 */ {"VVCSH", "Vertical v shear [/s]"}, - /* 47 */ {"DIRC", "Direction of current [deg]"}, - /* 48 */ {"SPC", "Speed of current [m/s]"}, - /* 49 */ {"UOGRD", "u of current [m/s]"}, - /* 50 */ {"VOGRD", "v of current [m/s]"}, - /* 51 */ {"SPFH", "Specific humidity [kg/kg]"}, - /* 52 */ {"RH", "Relative humidity [%]"}, - /* 53 */ {"MIXR", "Humidity mixing ratio [kg/kg]"}, - /* 54 */ {"PWAT", "Precipitable water [kg/m^2]"}, - /* 55 */ {"VAPP", "Vapor pressure [Pa]"}, - /* 56 */ {"SATD", "Saturation deficit [Pa]"}, - /* 57 */ {"EVP", "Evaporation [kg/m^2]"}, - /* 58 */ {"CICE", "Cloud Ice [kg/m^2]"}, - /* 59 */ {"PRATE", "Precipitation rate [kg/m^2/s]"}, - /* 60 */ {"TSTM", "Thunderstorm probability [%]"}, - /* 61 */ {"APCP", "Total precipitation [kg/m^2]"}, - /* 62 */ {"NCPCP", "Large scale precipitation [kg/m^2]"}, - /* 63 */ {"ACPCP", "Convective precipitation [kg/m^2]"}, - /* 64 */ {"SRWEQ", "Snowfall rate water equiv. [kg/m^2/s]"}, - /* 65 */ {"WEASD", "Accum. snow [kg/m^2]"}, - /* 66 */ {"SNOD", "Snow depth [m]"}, - /* 67 */ {"MIXHT", "Mixed layer depth [m]"}, - /* 68 */ {"TTHDP", "Transient thermocline depth [m]"}, - /* 69 */ {"MTHD", "Main thermocline depth [m]"}, - /* 70 */ {"MTHA", "Main thermocline anomaly [m]"}, - /* 71 */ {"TCDC", "Total cloud cover [%]"}, - /* 72 */ {"CDCON", "Convective cloud cover [%]"}, - /* 73 */ {"LCDC", "Low level cloud cover [%]"}, - /* 74 */ {"MCDC", "Mid level cloud cover [%]"}, - /* 75 */ {"HCDC", "High level cloud cover [%]"}, - /* 76 */ {"CWAT", "Cloud water [kg/m^2]"}, - /* 77 */ {"BLI", "Best lifted index (to 500 hPa) [K]"}, - /* 78 */ {"SNOC", "Convective snow [kg/m^2]"}, - /* 79 */ {"SNOL", "Large scale snow [kg/m^2]"}, - /* 80 */ {"WTMP", "Water temp. [K]"}, - /* 81 */ {"LAND", "Land cover (land=1;sea=0) [fraction]"}, - /* 82 */ {"DSLM", "Deviation of sea level from mean [m]"}, - /* 83 */ {"SFCR", "Surface roughness [m]"}, - /* 84 */ {"ALBDO", "Albedo [%]"}, - /* 85 */ {"TSOIL", "Soil temp. [K]"}, - /* 86 */ {"SOILM", "Soil moisture content [kg/m^2]"}, - /* 87 */ {"VEG", "Vegetation [%]"}, - /* 88 */ {"SALTY", "Salinity [kg/kg]"}, - /* 89 */ {"DEN", "Density [kg/m^3]"}, - /* 90 */ {"WATR", "Water runoff [kg/m^2]"}, - /* 91 */ {"ICEC", "Ice concentration (ice=1;no ice=0) [fraction]"}, - /* 92 */ {"ICETK", "Ice thickness [m]"}, - /* 93 */ {"DICED", "Direction of ice drift [deg]"}, - /* 94 */ {"SICED", "Speed of ice drift [m/s]"}, - /* 95 */ {"UICE", "u of ice drift [m/s]"}, - /* 96 */ {"VICE", "v of ice drift [m/s]"}, - /* 97 */ {"ICEG", "Ice growth rate [m/s]"}, - /* 98 */ {"ICED", "Ice divergence [/s]"}, - /* 99 */ {"SNOM", "Snow melt [kg/m^2]"}, - /* 100 */ {"HTSGW", "Sig height of wind waves and swell [m]"}, - /* 101 */ {"WVDIR", "Direction of wind waves [deg]"}, - /* 102 */ {"WVHGT", "Sig height of wind waves [m]"}, - /* 103 */ {"WVPER", "Mean period of wind waves [s]"}, - /* 104 */ {"SWDIR", "Direction of swell waves [deg]"}, - /* 105 */ {"SWELL", "Sig height of swell waves [m]"}, - /* 106 */ {"SWPER", "Mean period of swell waves [s]"}, - /* 107 */ {"DIRPW", "Primary wave direction [deg]"}, - /* 108 */ {"PERPW", "Primary wave mean period [s]"}, - /* 109 */ {"DIRSW", "Secondary wave direction [deg]"}, - /* 110 */ {"PERSW", "Secondary wave mean period [s]"}, - /* 111 */ {"NSWRS", "Net short wave (surface) [W/m^2]"}, - /* 112 */ {"NLWRS", "Net long wave (surface) [W/m^2]"}, - /* 113 */ {"NSWRT", "Net short wave (top) [W/m^2]"}, - /* 114 */ {"NLWRT", "Net long wave (top) [W/m^2]"}, - /* 115 */ {"LWAVR", "Long wave [W/m^2]"}, - /* 116 */ {"SWAVR", "Short wave [W/m^2]"}, - /* 117 */ {"GRAD", "Global radiation [W/m^2]"}, - /* 118 */ {"BRTMP", "Brightness temperature [K]"}, - /* 119 */ {"LWRAD", "Radiance with respect to wave no. [W/m/sr]"}, - /* 120 */ {"SWRAD", "Radiance with respect ot wave len. [W/m^3/sr]"}, - /* 121 */ {"LHTFL", "Latent heat flux [W/m^2]"}, - /* 122 */ {"SHTFL", "Sensible heat flux [W/m^2]"}, - /* 123 */ {"BLYDP", "Boundary layer dissipation [W/m^2]"}, - /* 124 */ {"UFLX", "Zonal momentum flux [N/m^2]"}, - /* 125 */ {"VFLX", "Meridional momentum flux [N/m^2]"}, - /* 126 */ {"WMIXE", "Wind mixing energy [J]"}, - /* 127 */ {"IMGD", "Image data []"}, - /* 128 */ {"var128", "undefined"}, - /* 129 */ {"var129", "undefined"}, - /* 130 */ {"var130", "undefined"}, - /* 131 */ {"var131", "undefined"}, - /* 132 */ {"var132", "undefined"}, - /* 133 */ {"var133", "undefined"}, - /* 134 */ {"var134", "undefined"}, - /* 135 */ {"var135", "undefined"}, - /* 136 */ {"var136", "undefined"}, - /* 137 */ {"var137", "undefined"}, - /* 138 */ {"var138", "undefined"}, - /* 139 */ {"var139", "undefined"}, - /* 140 */ {"var140", "undefined"}, - /* 141 */ {"var141", "undefined"}, - /* 142 */ {"var142", "undefined"}, - /* 143 */ {"var143", "undefined"}, - /* 144 */ {"var144", "undefined"}, - /* 145 */ {"var145", "undefined"}, - /* 146 */ {"var146", "undefined"}, - /* 147 */ {"var147", "undefined"}, - /* 148 */ {"var148", "undefined"}, - /* 149 */ {"var149", "undefined"}, - /* 150 */ {"var150", "undefined"}, - /* 151 */ {"var151", "undefined"}, - /* 152 */ {"var152", "undefined"}, - /* 153 */ {"var153", "undefined"}, - /* 154 */ {"var154", "undefined"}, - /* 155 */ {"var155", "undefined"}, - /* 156 */ {"var156", "undefined"}, - /* 157 */ {"var157", "undefined"}, - /* 158 */ {"var158", "undefined"}, - /* 159 */ {"var159", "undefined"}, - /* 160 */ {"var160", "undefined"}, - /* 161 */ {"var161", "undefined"}, - /* 162 */ {"var162", "undefined"}, - /* 163 */ {"var163", "undefined"}, - /* 164 */ {"var164", "undefined"}, - /* 165 */ {"var165", "undefined"}, - /* 166 */ {"var166", "undefined"}, - /* 167 */ {"var167", "undefined"}, - /* 168 */ {"MEIP", "Mean icing potential []"}, - /* 169 */ {"MAIP", "Maximum icing potential []"}, - /* 170 */ {"MECTP", "Mean in-cloud turbulence potential []"}, - /* 171 */ {"MACTP", "Maximum in-cloud turbulence potential []"}, - /* 172 */ {"MECAT", "Mean cloud air turbulence potential []"}, - /* 173 */ {"MACAT", "Maximum cloud air turbulence potential []"}, - /* 174 */ {"CBHE", "Cumulonimbus horizontal extent [%]"}, - /* 175 */ {"PCBB", "Pressure at cumblonimbus base [Pa]"}, - /* 176 */ {"PCBT", "Pressure at cumblonimbus top [Pa]"}, - /* 177 */ {"PECBB", "Pressure at embedded cumblonimbus base [Pa]"}, - /* 178 */ {"PECBT", "Pressure at embedded cumblonimbus top [Pa]"}, - /* 179 */ {"HCBB", "ICAO height at cumblonimbus base [m]"}, - /* 180 */ {"HCBT", "ICAO height at cumblonimbus top [m]"}, - /* 181 */ {"HECBB", "ICAO height at embedded cumblonimbus base [m]"}, - /* 182 */ {"HECBT", "ICAO height at embedded cumblonimbus top [m]"}, - /* 183 */ {"var183", "undefined"}, - /* 184 */ {"var184", "undefined"}, - /* 185 */ {"var185", "undefined"}, - /* 186 */ {"var186", "undefined"}, - /* 187 */ {"var187", "undefined"}, - /* 188 */ {"var188", "undefined"}, - /* 189 */ {"var189", "undefined"}, - /* 190 */ {"var190", "undefined"}, - /* 191 */ {"var191", "undefined"}, - /* 192 */ {"var192", "undefined"}, - /* 193 */ {"var193", "undefined"}, - /* 194 */ {"var194", "undefined"}, - /* 195 */ {"var195", "undefined"}, - /* 196 */ {"var196", "undefined"}, - /* 197 */ {"var197", "undefined"}, - /* 198 */ {"var198", "undefined"}, - /* 199 */ {"var199", "undefined"}, - /* 200 */ {"var200", "undefined"}, - /* 201 */ {"var201", "undefined"}, - /* 202 */ {"var202", "undefined"}, - /* 203 */ {"var203", "undefined"}, - /* 204 */ {"var204", "undefined"}, - /* 205 */ {"var205", "undefined"}, - /* 206 */ {"var206", "undefined"}, - /* 207 */ {"var207", "undefined"}, - /* 208 */ {"var208", "undefined"}, - /* 209 */ {"var209", "undefined"}, - /* 210 */ {"var210", "undefined"}, - /* 211 */ {"var211", "undefined"}, - /* 212 */ {"var212", "undefined"}, - /* 213 */ {"var213", "undefined"}, - /* 214 */ {"var214", "undefined"}, - /* 215 */ {"var215", "undefined"}, - /* 216 */ {"var216", "undefined"}, - /* 217 */ {"var217", "undefined"}, - /* 218 */ {"var218", "undefined"}, - /* 219 */ {"var219", "undefined"}, - /* 220 */ {"var220", "undefined"}, - /* 221 */ {"var221", "undefined"}, - /* 222 */ {"var222", "undefined"}, - /* 223 */ {"var223", "undefined"}, - /* 224 */ {"var224", "undefined"}, - /* 225 */ {"var225", "undefined"}, - /* 226 */ {"var226", "undefined"}, - /* 227 */ {"var227", "undefined"}, - /* 228 */ {"var228", "undefined"}, - /* 229 */ {"var229", "undefined"}, - /* 230 */ {"var230", "undefined"}, - /* 231 */ {"var231", "undefined"}, - /* 232 */ {"var232", "undefined"}, - /* 233 */ {"var233", "undefined"}, - /* 234 */ {"var234", "undefined"}, - /* 235 */ {"var235", "undefined"}, - /* 236 */ {"var236", "undefined"}, - /* 237 */ {"var237", "undefined"}, - /* 238 */ {"var238", "undefined"}, - /* 239 */ {"var239", "undefined"}, - /* 240 */ {"var240", "undefined"}, - /* 241 */ {"var241", "undefined"}, - /* 242 */ {"var242", "undefined"}, - /* 243 */ {"var243", "undefined"}, - /* 244 */ {"var244", "undefined"}, - /* 245 */ {"var245", "undefined"}, - /* 246 */ {"var246", "undefined"}, - /* 247 */ {"var247", "undefined"}, - /* 248 */ {"var248", "undefined"}, - /* 249 */ {"var249", "undefined"}, - /* 250 */ {"var250", "undefined"}, - /* 251 */ {"var251", "undefined"}, - /* 252 */ {"var252", "undefined"}, - /* 253 */ {"var253", "undefined"}, - /* 254 */ {"var254", "undefined"}, - /* 255 */ {"var255", "undefined"}, +const struct ParmTable parm_table_ecmwf_174[256] = { + /* 0 */ {"var0", "undefined"}, + /* 1 */ {"var1", "undefined"}, + /* 2 */ {"var2", "undefined"}, + /* 3 */ {"var3", "undefined"}, + /* 4 */ {"var4", "undefined"}, + /* 5 */ {"var5", "undefined"}, + /* 6 */ {"var6", "Total soil moisture [m]"}, + /* 7 */ {"var7", "undefined"}, + /* 8 */ {"SRO", "Surface runoff [kg m**-2]"}, + /* 9 */ {"SSRO", "Sub-surface runoff [kg m**-2]"}, + /* 10 */ {"var10", "undefined"}, + /* 11 */ {"var11", "undefined"}, + /* 12 */ {"var12", "undefined"}, + /* 13 */ {"var13", "undefined"}, + /* 14 */ {"var14", "undefined"}, + /* 15 */ {"var15", "undefined"}, + /* 16 */ {"var16", "undefined"}, + /* 17 */ {"var17", "undefined"}, + /* 18 */ {"var18", "undefined"}, + /* 19 */ {"var19", "undefined"}, + /* 20 */ {"var20", "undefined"}, + /* 21 */ {"var21", "undefined"}, + /* 22 */ {"var22", "undefined"}, + /* 23 */ {"var23", "undefined"}, + /* 24 */ {"var24", "undefined"}, + /* 25 */ {"var25", "undefined"}, + /* 26 */ {"var26", "undefined"}, + /* 27 */ {"var27", "undefined"}, + /* 28 */ {"var28", "undefined"}, + /* 29 */ {"var29", "undefined"}, + /* 30 */ {"var30", "undefined"}, + /* 31 */ {"var31", "Fraction of sea-ice in sea [(0 - 1)]"}, + /* 32 */ {"var32", "undefined"}, + /* 33 */ {"var33", "undefined"}, + /* 34 */ {"var34", "Open-sea surface temperature [K]"}, + /* 35 */ {"var35", "undefined"}, + /* 36 */ {"var36", "undefined"}, + /* 37 */ {"var37", "undefined"}, + /* 38 */ {"var38", "undefined"}, + /* 39 */ {"var39", "Volumetric soil water layer 1 [m**3 m**-3]"}, + /* 40 */ {"var40", "Volumetric soil water layer 2 [m**3 m**-3]"}, + /* 41 */ {"var41", "Volumetric soil water layer 3 [m**3 m**-3]"}, + /* 42 */ {"var42", "Volumetric soil water layer 4 [m**3 m**-3]"}, + /* 43 */ {"var43", "undefined"}, + /* 44 */ {"var44", "undefined"}, + /* 45 */ {"var45", "undefined"}, + /* 46 */ {"var46", "undefined"}, + /* 47 */ {"var47", "undefined"}, + /* 48 */ {"var48", "undefined"}, + /* 49 */ {"var49", "10 metre wind gust over last 24 hours [m s**-1]"}, + /* 50 */ {"var50", "undefined"}, + /* 51 */ {"var51", "undefined"}, + /* 52 */ {"var52", "undefined"}, + /* 53 */ {"var53", "undefined"}, + /* 54 */ {"var54", "undefined"}, + /* 55 */ {"var55", "1.5m temperature - mean over last 24 hours [K]"}, + /* 56 */ {"var56", "undefined"}, + /* 57 */ {"var57", "undefined"}, + /* 58 */ {"var58", "undefined"}, + /* 59 */ {"var59", "undefined"}, + /* 60 */ {"var60", "undefined"}, + /* 61 */ {"var61", "undefined"}, + /* 62 */ {"var62", "undefined"}, + /* 63 */ {"var63", "undefined"}, + /* 64 */ {"var64", "undefined"}, + /* 65 */ {"var65", "undefined"}, + /* 66 */ {"var66", "undefined"}, + /* 67 */ {"var67", "undefined"}, + /* 68 */ {"var68", "undefined"}, + /* 69 */ {"var69", "undefined"}, + /* 70 */ {"var70", "undefined"}, + /* 71 */ {"var71", "undefined"}, + /* 72 */ {"var72", "undefined"}, + /* 73 */ {"var73", "undefined"}, + /* 74 */ {"var74", "undefined"}, + /* 75 */ {"var75", "undefined"}, + /* 76 */ {"var76", "undefined"}, + /* 77 */ {"var77", "undefined"}, + /* 78 */ {"var78", "undefined"}, + /* 79 */ {"var79", "undefined"}, + /* 80 */ {"var80", "undefined"}, + /* 81 */ {"var81", "undefined"}, + /* 82 */ {"var82", "undefined"}, + /* 83 */ {"var83", "Net primary productivity [kg C m**-2 s**-1]"}, + /* 84 */ {"var84", "undefined"}, + /* 85 */ {"var85", "10m U wind over land [m s**-1]"}, + /* 86 */ {"var86", "10m V wind over land [m s**-1]"}, + /* 87 */ {"var87", "1.5m temperature over land [K]"}, + /* 88 */ {"var88", "1.5m dewpoint temperature over land [K]"}, + /* 89 */ {"var89", "Top incoming solar radiation [W m**-2 s]"}, + /* 90 */ {"var90", "Top outgoing solar radiation [W m**-2 s]"}, + /* 91 */ {"var91", "undefined"}, + /* 92 */ {"var92", "undefined"}, + /* 93 */ {"var93", "undefined"}, + /* 94 */ {"var94", "Mean sea surface temperature [K]"}, + /* 95 */ {"var95", "1.5m specific humidity [kg kg**-1]"}, + /* 96 */ {"var96", "undefined"}, + /* 97 */ {"var97", "undefined"}, + /* 98 */ {"var98", "Sea-ice thickness [m]"}, + /* 99 */ {"var99", "Liquid water potential temperature [K]"}, + /* 100 */ {"var100", "undefined"}, + /* 101 */ {"var101", "undefined"}, + /* 102 */ {"var102", "undefined"}, + /* 103 */ {"var103", "undefined"}, + /* 104 */ {"var104", "undefined"}, + /* 105 */ {"var105", "undefined"}, + /* 106 */ {"var106", "undefined"}, + /* 107 */ {"var107", "undefined"}, + /* 108 */ {"var108", "undefined"}, + /* 109 */ {"var109", "undefined"}, + /* 110 */ {"var110", "Ocean ice concentration [(0 - 1)]"}, + /* 111 */ {"var111", "Ocean mean ice depth [m]"}, + /* 112 */ {"var112", "undefined"}, + /* 113 */ {"var113", "undefined"}, + /* 114 */ {"var114", "undefined"}, + /* 115 */ {"var115", "undefined"}, + /* 116 */ {"var116", "undefined"}, + /* 117 */ {"var117", "undefined"}, + /* 118 */ {"var118", "undefined"}, + /* 119 */ {"var119", "undefined"}, + /* 120 */ {"var120", "undefined"}, + /* 121 */ {"var121", "undefined"}, + /* 122 */ {"var122", "undefined"}, + /* 123 */ {"var123", "undefined"}, + /* 124 */ {"var124", "undefined"}, + /* 125 */ {"var125", "undefined"}, + /* 126 */ {"var126", "undefined"}, + /* 127 */ {"var127", "undefined"}, + /* 128 */ {"var128", "undefined"}, + /* 129 */ {"var129", "undefined"}, + /* 130 */ {"var130", "undefined"}, + /* 131 */ {"var131", "undefined"}, + /* 132 */ {"var132", "undefined"}, + /* 133 */ {"var133", "undefined"}, + /* 134 */ {"var134", "undefined"}, + /* 135 */ {"var135", "undefined"}, + /* 136 */ {"var136", "undefined"}, + /* 137 */ {"var137", "undefined"}, + /* 138 */ {"var138", "undefined"}, + /* 139 */ {"var139", "Soil temperature layer 1 [K]"}, + /* 140 */ {"var140", "undefined"}, + /* 141 */ {"var141", "undefined"}, + /* 142 */ {"var142", "undefined"}, + /* 143 */ {"var143", "undefined"}, + /* 144 */ {"var144", "undefined"}, + /* 145 */ {"var145", "undefined"}, + /* 146 */ {"var146", "undefined"}, + /* 147 */ {"var147", "undefined"}, + /* 148 */ {"var148", "undefined"}, + /* 149 */ {"var149", "undefined"}, + /* 150 */ {"var150", "undefined"}, + /* 151 */ {"var151", "undefined"}, + /* 152 */ {"var152", "undefined"}, + /* 153 */ {"var153", "undefined"}, + /* 154 */ {"var154", "undefined"}, + /* 155 */ {"var155", "undefined"}, + /* 156 */ {"var156", "undefined"}, + /* 157 */ {"var157", "undefined"}, + /* 158 */ {"var158", "undefined"}, + /* 159 */ {"var159", "undefined"}, + /* 160 */ {"var160", "undefined"}, + /* 161 */ {"var161", "undefined"}, + /* 162 */ {"var162", "undefined"}, + /* 163 */ {"var163", "undefined"}, + /* 164 */ {"var164", "Average potential temperature in upper 293.4m [degrees C]"}, + /* 165 */ {"var165", "undefined"}, + /* 166 */ {"var166", "undefined"}, + /* 167 */ {"var167", "1.5m temperature [K]"}, + /* 168 */ {"var168", "1.5m dewpoint temperature [K]"}, + /* 169 */ {"var169", "undefined"}, + /* 170 */ {"var170", "Soil temperature layer 2 [K]"}, + /* 171 */ {"var171", "undefined"}, + /* 172 */ {"var172", "Fractional land mask [(0 - 1)]"}, + /* 173 */ {"var173", "undefined"}, + /* 174 */ {"var174", "undefined"}, + /* 175 */ {"var175", "Average salinity in upper 293.4m [psu]"}, + /* 176 */ {"var176", "undefined"}, + /* 177 */ {"var177", "undefined"}, + /* 178 */ {"var178", "undefined"}, + /* 179 */ {"var179", "undefined"}, + /* 180 */ {"var180", "undefined"}, + /* 181 */ {"var181", "undefined"}, + /* 182 */ {"var182", "undefined"}, + /* 183 */ {"var183", "Soil temperature layer 3 [K]"}, + /* 184 */ {"var184", "undefined"}, + /* 185 */ {"var185", "undefined"}, + /* 186 */ {"var186", "undefined"}, + /* 187 */ {"var187", "undefined"}, + /* 188 */ {"var188", "undefined"}, + /* 189 */ {"var189", "undefined"}, + /* 190 */ {"var190", "undefined"}, + /* 191 */ {"var191", "undefined"}, + /* 192 */ {"var192", "undefined"}, + /* 193 */ {"var193", "undefined"}, + /* 194 */ {"var194", "undefined"}, + /* 195 */ {"var195", "undefined"}, + /* 196 */ {"var196", "undefined"}, + /* 197 */ {"var197", "undefined"}, + /* 198 */ {"var198", "undefined"}, + /* 199 */ {"var199", "undefined"}, + /* 200 */ {"var200", "undefined"}, + /* 201 */ {"var201", "1.5m temperature - maximum over last 24 hours [K]"}, + /* 202 */ {"var202", "1.5m temperature - minimum over last 24 hours [K]"}, + /* 203 */ {"var203", "undefined"}, + /* 204 */ {"var204", "undefined"}, + /* 205 */ {"var205", "undefined"}, + /* 206 */ {"var206", "undefined"}, + /* 207 */ {"var207", "undefined"}, + /* 208 */ {"var208", "undefined"}, + /* 209 */ {"var209", "undefined"}, + /* 210 */ {"var210", "undefined"}, + /* 211 */ {"var211", "undefined"}, + /* 212 */ {"var212", "undefined"}, + /* 213 */ {"var213", "undefined"}, + /* 214 */ {"var214", "undefined"}, + /* 215 */ {"var215", "undefined"}, + /* 216 */ {"var216", "undefined"}, + /* 217 */ {"var217", "undefined"}, + /* 218 */ {"var218", "undefined"}, + /* 219 */ {"var219", "undefined"}, + /* 220 */ {"var220", "undefined"}, + /* 221 */ {"var221", "undefined"}, + /* 222 */ {"var222", "undefined"}, + /* 223 */ {"var223", "undefined"}, + /* 224 */ {"var224", "undefined"}, + /* 225 */ {"var225", "undefined"}, + /* 226 */ {"var226", "undefined"}, + /* 227 */ {"var227", "undefined"}, + /* 228 */ {"var228", "undefined"}, + /* 229 */ {"var229", "undefined"}, + /* 230 */ {"var230", "undefined"}, + /* 231 */ {"var231", "undefined"}, + /* 232 */ {"var232", "undefined"}, + /* 233 */ {"var233", "undefined"}, + /* 234 */ {"var234", "undefined"}, + /* 235 */ {"var235", "undefined"}, + /* 236 */ {"var236", "Soil temperature layer 4 [K]"}, + /* 237 */ {"var237", "undefined"}, + /* 238 */ {"var238", "undefined"}, + /* 239 */ {"var239", "undefined"}, + /* 240 */ {"var240", "undefined"}, + /* 241 */ {"var241", "undefined"}, + /* 242 */ {"var242", "undefined"}, + /* 243 */ {"var243", "undefined"}, + /* 244 */ {"var244", "undefined"}, + /* 245 */ {"var245", "undefined"}, + /* 246 */ {"var246", "undefined"}, + /* 247 */ {"var247", "undefined"}, + /* 248 */ {"var248", "undefined"}, + /* 249 */ {"var249", "undefined"}, + /* 250 */ {"var250", "undefined"}, + /* 251 */ {"var251", "undefined"}, + /* 252 */ {"var252", "undefined"}, + /* 253 */ {"var253", "undefined"}, + /* 254 */ {"var254", "undefined"}, + /* 255 */ {"var255", "Indicates a missing value []"}, }; -const struct ParmTable parm_table_nceptab_141[256] = { - /* 0 */ {"var0", "undefined"}, - /* 1 */ {"PRES", "Pressure [Pa]"}, - /* 2 */ {"PRMSL", "Pressure reduced to MSL [Pa]"}, - /* 3 */ {"PTEND", "Pressure tendency [Pa/s]"}, - /* 4 */ {"PVORT", "Pot. vorticity [km^2/kg/s]"}, - /* 5 */ {"ICAHT", "ICAO Standard Atmosphere Reference Height [M]"}, - /* 6 */ {"GP", "Geopotential [m^2/s^2]"}, - /* 7 */ {"HGT", "Geopotential height [gpm]"}, - /* 8 */ {"DIST", "Geometric height [m]"}, - /* 9 */ {"HSTDV", "Std dev of height [m]"}, - /* 10 */ {"TOZNE", "Total ozone [Dobson]"}, - /* 11 */ {"TMP", "Temp. [K]"}, - /* 12 */ {"VTMP", "Virtual temp. [K]"}, - /* 13 */ {"POT", "Potential temp. [K]"}, - /* 14 */ {"EPOT", "Pseudo-adiabatic pot. temp. [K]"}, - /* 15 */ {"TMAX", "Max. temp. [K]"}, - /* 16 */ {"TMIN", "Min. temp. [K]"}, - /* 17 */ {"DPT", "Dew point temp. [K]"}, - /* 18 */ {"DEPR", "Dew point depression [K]"}, - /* 19 */ {"LAPR", "Lapse rate [K/m]"}, - /* 20 */ {"VIS", "Visibility [m]"}, - /* 21 */ {"RDSP1", "Radar spectra (1) [non-dim]"}, - /* 22 */ {"RDSP2", "Radar spectra (2) [non-dim]"}, - /* 23 */ {"RDSP3", "Radar spectra (3) [non-dim]"}, - /* 24 */ {"PLI", "Parcel lifted index (to 500 hPa) [K]"}, - /* 25 */ {"TMPA", "Temp. anomaly [K]"}, - /* 26 */ {"PRESA", "Pressure anomaly [Pa]"}, - /* 27 */ {"GPA", "Geopotential height anomaly [gpm]"}, - /* 28 */ {"WVSP1", "Wave spectra (1) [non-dim]"}, - /* 29 */ {"WVSP2", "Wave spectra (2) [non-dim]"}, - /* 30 */ {"WVSP3", "Wave spectra (3) [non-dim]"}, - /* 31 */ {"WDIR", "Wind direction [deg]"}, - /* 32 */ {"WIND", "Wind speed [m/s]"}, - /* 33 */ {"UGRD", "u wind [m/s]"}, - /* 34 */ {"VGRD", "v wind [m/s]"}, - /* 35 */ {"STRM", "Stream function [m^2/s]"}, - /* 36 */ {"VPOT", "Velocity potential [m^2/s]"}, - /* 37 */ {"MNTSF", "Montgomery stream function [m^2/s^2]"}, - /* 38 */ {"SGCVV", "Sigma coord. vertical velocity [/s]"}, - /* 39 */ {"VVEL", "Pressure vertical velocity [Pa/s]"}, - /* 40 */ {"DZDT", "Geometric vertical velocity [m/s]"}, - /* 41 */ {"ABSV", "Absolute vorticity [/s]"}, - /* 42 */ {"ABSD", "Absolute divergence [/s]"}, - /* 43 */ {"RELV", "Relative vorticity [/s]"}, - /* 44 */ {"RELD", "Relative divergence [/s]"}, - /* 45 */ {"VUCSH", "Vertical u shear [/s]"}, - /* 46 */ {"VVCSH", "Vertical v shear [/s]"}, - /* 47 */ {"DIRC", "Direction of current [deg]"}, - /* 48 */ {"SPC", "Speed of current [m/s]"}, - /* 49 */ {"UOGRD", "u of current [m/s]"}, - /* 50 */ {"VOGRD", "v of current [m/s]"}, - /* 51 */ {"SPFH", "Specific humidity [kg/kg]"}, - /* 52 */ {"RH", "Relative humidity [%]"}, - /* 53 */ {"MIXR", "Humidity mixing ratio [kg/kg]"}, - /* 54 */ {"PWAT", "Precipitable water [kg/m^2]"}, - /* 55 */ {"VAPP", "Vapor pressure [Pa]"}, - /* 56 */ {"SATD", "Saturation deficit [Pa]"}, - /* 57 */ {"EVP", "Evaporation [kg/m^2]"}, - /* 58 */ {"CICE", "Cloud Ice [kg/m^2]"}, - /* 59 */ {"PRATE", "Precipitation rate [kg/m^2/s]"}, - /* 60 */ {"TSTM", "Thunderstorm probability [%]"}, - /* 61 */ {"APCP", "Total precipitation [kg/m^2]"}, - /* 62 */ {"NCPCP", "Large scale precipitation [kg/m^2]"}, - /* 63 */ {"ACPCP", "Convective precipitation [kg/m^2]"}, - /* 64 */ {"SRWEQ", "Snowfall rate water equiv. [kg/m^2/s]"}, - /* 65 */ {"WEASD", "Accum. snow [kg/m^2]"}, - /* 66 */ {"SNOD", "Snow depth [m]"}, - /* 67 */ {"MIXHT", "Mixed layer depth [m]"}, - /* 68 */ {"TTHDP", "Transient thermocline depth [m]"}, - /* 69 */ {"MTHD", "Main thermocline depth [m]"}, - /* 70 */ {"MTHA", "Main thermocline anomaly [m]"}, - /* 71 */ {"TCDC", "Total cloud cover [%]"}, - /* 72 */ {"CDCON", "Convective cloud cover [%]"}, - /* 73 */ {"LCDC", "Low level cloud cover [%]"}, - /* 74 */ {"MCDC", "Mid level cloud cover [%]"}, - /* 75 */ {"HCDC", "High level cloud cover [%]"}, - /* 76 */ {"CWAT", "Cloud water [kg/m^2]"}, - /* 77 */ {"BLI", "Best lifted index (to 500 hPa) [K]"}, - /* 78 */ {"SNOC", "Convective snow [kg/m^2]"}, - /* 79 */ {"SNOL", "Large scale snow [kg/m^2]"}, - /* 80 */ {"WTMP", "Water temp. [K]"}, - /* 81 */ {"LAND", "Land cover (land=1;sea=0) [fraction]"}, - /* 82 */ {"DSLM", "Deviation of sea level from mean [m]"}, - /* 83 */ {"SFCR", "Surface roughness [m]"}, - /* 84 */ {"ALBDO", "Albedo [%]"}, - /* 85 */ {"TSOIL", "Soil temp. [K]"}, - /* 86 */ {"SOILM", "Soil moisture content [kg/m^2]"}, - /* 87 */ {"VEG", "Vegetation [%]"}, - /* 88 */ {"SALTY", "Salinity [kg/kg]"}, - /* 89 */ {"DEN", "Density [kg/m^3]"}, - /* 90 */ {"WATR", "Water runoff [kg/m^2]"}, - /* 91 */ {"ICEC", "Ice concentration (ice=1;no ice=0) [fraction]"}, - /* 92 */ {"ICETK", "Ice thickness [m]"}, - /* 93 */ {"DICED", "Direction of ice drift [deg]"}, - /* 94 */ {"SICED", "Speed of ice drift [m/s]"}, - /* 95 */ {"UICE", "u of ice drift [m/s]"}, - /* 96 */ {"VICE", "v of ice drift [m/s]"}, - /* 97 */ {"ICEG", "Ice growth rate [m/s]"}, - /* 98 */ {"ICED", "Ice divergence [/s]"}, - /* 99 */ {"SNOM", "Snow melt [kg/m^2]"}, - /* 100 */ {"HTSGW", "Sig height of wind waves and swell [m]"}, - /* 101 */ {"WVDIR", "Direction of wind waves [deg]"}, - /* 102 */ {"WVHGT", "Sig height of wind waves [m]"}, - /* 103 */ {"WVPER", "Mean period of wind waves [s]"}, - /* 104 */ {"SWDIR", "Direction of swell waves [deg]"}, - /* 105 */ {"SWELL", "Sig height of swell waves [m]"}, - /* 106 */ {"SWPER", "Mean period of swell waves [s]"}, - /* 107 */ {"DIRPW", "Primary wave direction [deg]"}, - /* 108 */ {"PERPW", "Primary wave mean period [s]"}, - /* 109 */ {"DIRSW", "Secondary wave direction [deg]"}, - /* 110 */ {"PERSW", "Secondary wave mean period [s]"}, - /* 111 */ {"NSWRS", "Net short wave (surface) [W/m^2]"}, - /* 112 */ {"NLWRS", "Net long wave (surface) [W/m^2]"}, - /* 113 */ {"NSWRT", "Net short wave (top) [W/m^2]"}, - /* 114 */ {"NLWRT", "Net long wave (top) [W/m^2]"}, - /* 115 */ {"LWAVR", "Long wave [W/m^2]"}, - /* 116 */ {"SWAVR", "Short wave [W/m^2]"}, - /* 117 */ {"GRAD", "Global radiation [W/m^2]"}, - /* 118 */ {"BRTMP", "Brightness temperature [K]"}, - /* 119 */ {"LWRAD", "Radiance with respect to wave no. [W/m/sr]"}, - /* 120 */ {"SWRAD", "Radiance with respect ot wave len. [W/m^3/sr]"}, - /* 121 */ {"LHTFL", "Latent heat flux [W/m^2]"}, - /* 122 */ {"SHTFL", "Sensible heat flux [W/m^2]"}, - /* 123 */ {"BLYDP", "Boundary layer dissipation [W/m^2]"}, - /* 124 */ {"UFLX", "Zonal momentum flux [N/m^2]"}, - /* 125 */ {"VFLX", "Meridional momentum flux [N/m^2]"}, - /* 126 */ {"WMIXE", "Wind mixing energy [J]"}, - /* 127 */ {"IMGD", "Image data []"}, - /* 128 */ {"EXTNC", "Aerosol Extinction Coefficient [1/km]"}, - /* 129 */ {"AOD", "Aerosol Optical Depth [-]"}, - /* 130 */ {"ASFTR", "Aerosol Asymmetry Factor [-]"}, - /* 131 */ {"SSALBD", "Aerosol Single Scatter Albedo [-]"}, - /* 132 */ {"BSCTRS", "Aerosol Back Scattering [1/km/sr]"}, - /* 133 */ {"var133", "undefined"}, - /* 134 */ {"var134", "undefined"}, - /* 135 */ {"var135", "undefined"}, - /* 136 */ {"var136", "undefined"}, - /* 137 */ {"var137", "undefined"}, - /* 138 */ {"var138", "undefined"}, - /* 139 */ {"var139", "undefined"}, - /* 140 */ {"NOy", "Total Inorganic and Organic Nitrates [ppbV]"}, - /* 141 */ {"NO", "Nitrogen Oxide [ppbV]"}, - /* 142 */ {"NO2", "Nitrogen Dioxide [ppbV]"}, - /* 143 */ {"N2O5", "Nitrogen Pentoxide [ppbV]"}, - /* 144 */ {"HNO3", "Nitric Acid [ppbV]"}, - /* 145 */ {"NO3", "Nitrogen Trioxide [ppbV]"}, - /* 146 */ {"PNA", "Peroxynitric Acid [ppbV]"}, - /* 147 */ {"HONO", "Nitrous Acid [ppbV]"}, - /* 148 */ {"CO", "Carbon Monoxide [ppbV]"}, - /* 149 */ {"NH3", "Ammonia [ppbV]"}, - /* 150 */ {"HCL", "Hydrogen Chloride [ppbV]"}, - /* 151 */ {"var151", "undefined"}, - /* 152 */ {"var152", "undefined"}, - /* 153 */ {"var153", "undefined"}, - /* 154 */ {"var154", "undefined"}, - /* 155 */ {"var155", "undefined"}, - /* 156 */ {"var156", "undefined"}, - /* 157 */ {"var157", "undefined"}, - /* 158 */ {"var158", "undefined"}, - /* 159 */ {"PAR", "Lumped Single-Bond Carbon Specie [ppbV]"}, - /* 160 */ {"ETHE", "Ethene [ppbV]"}, - /* 161 */ {"OLE", "Lumped Double-Bond Carbon Species Less Ethene [ppbV]"}, - /* 162 */ {"TOL", "Toluene [ppbV]"}, - /* 163 */ {"XYL", "Xylene [ppbV]"}, - /* 164 */ {"ISOP", "Isoprene [ppbV]"}, - /* 165 */ {"var165", "undefined"}, - /* 166 */ {"FORM", "Formaldehyde [ppbV]"}, - /* 167 */ {"ALD2", "Acetaldehyde & Higher Aldehydes [ppbV]"}, - /* 168 */ {"MGLY", "Methyl Glyoxal [ppbV]"}, - /* 169 */ {"CRES", "Cresol and Higher Molecular Weight Phenols [ppbV]"}, - /* 170 */ {"var170", "undefined"}, - /* 171 */ {"var171", "undefined"}, - /* 172 */ {"PAN", "Peroxyacyl Nitrate [ppbV]"}, - /* 173 */ {"NTR", "Lumped Gaseous Organic Nitrate [ppbV]"}, - /* 174 */ {"var174", "undefined"}, - /* 175 */ {"var175", "undefined"}, - /* 176 */ {"var176", "undefined"}, - /* 177 */ {"ROOH", "Esters [ppbV]"}, - /* 178 */ {"ETHOH", "Ethanol [ppbV]"}, - /* 179 */ {"METHOH", "Methanol [ppbV]"}, - /* 180 */ {"var180", "undefined"}, - /* 181 */ {"var181", "undefined"}, - /* 182 */ {"var182", "undefined"}, - /* 183 */ {"var183", "undefined"}, - /* 184 */ {"var184", "undefined"}, - /* 185 */ {"var185", "undefined"}, - /* 186 */ {"H2O2", "Hydrogen Peroxide [ppbV]"}, - /* 187 */ {"OH", "Hydroxyl Radical [ppbV]"}, - /* 188 */ {"HO2", "Hydroperoxyl Radical [ppbV]"}, - /* 189 */ {"var189", "undefined"}, - /* 190 */ {"var190", "undefined"}, - /* 191 */ {"var191", "undefined"}, - /* 192 */ {"var192", "undefined"}, - /* 193 */ {"var193", "undefined"}, - /* 194 */ {"var194", "undefined"}, - /* 195 */ {"var195", "undefined"}, - /* 196 */ {"var196", "undefined"}, - /* 197 */ {"var197", "undefined"}, - /* 198 */ {"var198", "undefined"}, - /* 199 */ {"var199", "undefined"}, - /* 200 */ {"ASO4", "Sulfate (SO4) Particulates ≤ 2.5 μm Diameter [μg/m^3]"}, - /* 201 */ {"ANH4", "Ammonia (NH4) Particulates ≤ 2.5 μm Diameter [μg/m^3]"}, - /* 202 */ {"ANO3", "Nitrate (NO3) Particulates ≤ 2.5 μm Diameter [μg/m^3]"}, - /* 203 */ {"AORGA", "Organic Particulates ≤ 2.5 μm Diameter [μg/m^3]"}, - /* 204 */ {"AORGPA", "Primarily Organic Particulates ≤ 2.5 μm Diameter [μg/m^3]"}, - /* 205 */ {"AORGB", "Biogenically Originated Particulates ≤ 2.5 μm Diameter [μg/m^3]"}, - /* 206 */ {"AEC", "Elemental Carbon Particulates ≤ 2.5 μm Diameter [μg/m^3]"}, - /* 207 */ {"A25", "Unspecified Anthropogenic Particulates ≤ 2.5 μm Diameter [μg/m^3]"}, - /* 208 */ {"AH2O", "Water Particulates ≤ 2.5 μm Diameter [μg/m^3]"}, - /* 209 */ {"ANA", "Sodium Particulates ≤ 2.5 μm Diameter [μg/m^3]"}, - /* 210 */ {"ACL", "Chloride Particulates ≤ 2.5 μm Diameter [μg/m^3]"}, - /* 211 */ {"var211", "undefined"}, - /* 212 */ {"var212", "undefined"}, - /* 213 */ {"var213", "undefined"}, - /* 214 */ {"var214", "undefined"}, - /* 215 */ {"var215", "undefined"}, - /* 216 */ {"ASO4K", "Sulfate (SO4) Particulates between 2.5 and 10 μm Diameter [μg/m^3]"}, - /* 217 */ {"ANAK", "Sodium (NA) Particulates between 2.5 and 10 μm Diameter [μg/m^3]"}, - /* 218 */ {"ACLK", "Chloride (CL) Particulates between 2.5 and 10 μm Diameter [μg/m^3]"}, - /* 219 */ {"ASEAS", "Sea Salt Originated Particulates between 2.5 and 10 μm Diameter [μg/m^3]"}, - /* 220 */ {"ASOIL", "Crustal Material Orginated Particulates between 2.5 and 10 μm Diameter [μg/m^3]"}, - /* 221 */ {"ACORS", "Particulates between 2.5 and 10 μm Diameter [μg/m^3]"}, - /* 222 */ {"NUMATKN", "Number Concentration Particulates between 2.5 and 0.1 μm Diameter [number/m^3]"}, - /* 223 */ {"NUMACC", "Number Concentration Particulates between 2.5 and 2.5 μm Diameter [number/m^3]"}, - /* 224 */ {"NUMCOR", "Number Concentration Particulates between 2.5 and 10 μm Diameter [number/m^3]"}, - /* 225 */ {"var225", "undefined"}, - /* 226 */ {"var226", "undefined"}, - /* 227 */ {"var227", "undefined"}, - /* 228 */ {"SRFATKN", "Surface Area Contributed by Particulates ≤ 0.1 μm Diameter [m2/m^3]"}, - /* 229 */ {"SRFACC", "Surface Area Contributed by Particulates between 0.1 and 2.5 μm Diameter [m2/m^3]"}, - /* 230 */ {"var230", "undefined"}, - /* 231 */ {"var231", "undefined"}, - /* 232 */ {"SO2", "Sulfur Dioxide [ppbV]"}, - /* 233 */ {"MSA", "Methanesulfonic Acid [Kg/Kg]"}, - /* 234 */ {"TSO4", "Total Sulfate Particulates (Fine ands Coarse) [μg/m^3]"}, - /* 235 */ {"DMS", "Dimethylsulfide [Kg/Kg]"}, - /* 236 */ {"var236", "undefined"}, - /* 237 */ {"var237", "undefined"}, - /* 238 */ {"var238", "undefined"}, - /* 239 */ {"var239", "undefined"}, - /* 240 */ {"DU1", "Dust Particulates between 0.2 - 2.0 μm Diameter [Kg/Kg]"}, - /* 241 */ {"DU2", "Dust Particulates between 2.0 - 3.6 μm Diameter [Kg/Kg]"}, - /* 242 */ {"DU3", "Dust Particulates between 3.6 - 6.0 μm Diameter [Kg/Kg]"}, - /* 243 */ {"DU4", "Dust Particulates between 6.0 - 12.0 μm Diameter [Kg/Kg]"}, - /* 244 */ {"DU5", "Dust Particulates between 12.0 - 20.0 μm Diameter [Kg/Kg]"}, - /* 245 */ {"SS1", "Sea Salt Particulates between 0.2 - 1.0 μm Diameter [Kg/Kg]"}, - /* 246 */ {"SS2", "Sea Salt Particulates between 1.0 - 3.0 μm Diameter [Kg/Kg]"}, - /* 247 */ {"SS3", "Sea Salt Particulates between 3.0 - 10.0 μm Diameter [Kg/Kg]"}, - /* 248 */ {"SS4", "Sea Salt Particulates between 10.0 - 20.0 μm Diameter [Kg/Kg]"}, - /* 249 */ {"OCDRY", "Hydrophobic Organic Carbon [Kg/Kg]"}, - /* 250 */ {"OCWET", "Hydrophilic Organic Carbon [Kg/Kg]"}, - /* 251 */ {"BCDRY", "Hydrophobic Black Carbon [Kg/Kg]"}, - /* 252 */ {"BCWET", "Hydrophilic Black Carbon [Kg/Kg]"}, - /* 253 */ {"var253", "undefined"}, - /* 254 */ {"var254", "undefined"}, - /* 255 */ {"var255", "undefined"}, +const struct ParmTable parm_table_ecmwf_180[256] = { + /* 0 */ {"var0", "undefined"}, + /* 1 */ {"var1", "undefined"}, + /* 2 */ {"var2", "undefined"}, + /* 3 */ {"var3", "undefined"}, + /* 4 */ {"var4", "undefined"}, + /* 5 */ {"var5", "undefined"}, + /* 6 */ {"var6", "undefined"}, + /* 7 */ {"var7", "undefined"}, + /* 8 */ {"var8", "undefined"}, + /* 9 */ {"var9", "undefined"}, + /* 10 */ {"var10", "undefined"}, + /* 11 */ {"var11", "undefined"}, + /* 12 */ {"var12", "undefined"}, + /* 13 */ {"var13", "undefined"}, + /* 14 */ {"var14", "undefined"}, + /* 15 */ {"var15", "undefined"}, + /* 16 */ {"var16", "undefined"}, + /* 17 */ {"var17", "undefined"}, + /* 18 */ {"var18", "undefined"}, + /* 19 */ {"var19", "undefined"}, + /* 20 */ {"var20", "undefined"}, + /* 21 */ {"var21", "undefined"}, + /* 22 */ {"var22", "undefined"}, + /* 23 */ {"var23", "undefined"}, + /* 24 */ {"var24", "undefined"}, + /* 25 */ {"var25", "undefined"}, + /* 26 */ {"var26", "undefined"}, + /* 27 */ {"var27", "undefined"}, + /* 28 */ {"var28", "undefined"}, + /* 29 */ {"var29", "undefined"}, + /* 30 */ {"var30", "undefined"}, + /* 31 */ {"var31", "undefined"}, + /* 32 */ {"var32", "undefined"}, + /* 33 */ {"var33", "undefined"}, + /* 34 */ {"var34", "undefined"}, + /* 35 */ {"var35", "undefined"}, + /* 36 */ {"var36", "undefined"}, + /* 37 */ {"var37", "undefined"}, + /* 38 */ {"var38", "undefined"}, + /* 39 */ {"var39", "undefined"}, + /* 40 */ {"var40", "undefined"}, + /* 41 */ {"var41", "undefined"}, + /* 42 */ {"var42", "undefined"}, + /* 43 */ {"var43", "undefined"}, + /* 44 */ {"var44", "undefined"}, + /* 45 */ {"var45", "undefined"}, + /* 46 */ {"var46", "undefined"}, + /* 47 */ {"var47", "undefined"}, + /* 48 */ {"var48", "undefined"}, + /* 49 */ {"var49", "undefined"}, + /* 50 */ {"var50", "undefined"}, + /* 51 */ {"var51", "undefined"}, + /* 52 */ {"var52", "undefined"}, + /* 53 */ {"var53", "undefined"}, + /* 54 */ {"var54", "undefined"}, + /* 55 */ {"var55", "undefined"}, + /* 56 */ {"var56", "undefined"}, + /* 57 */ {"var57", "undefined"}, + /* 58 */ {"var58", "undefined"}, + /* 59 */ {"var59", "undefined"}, + /* 60 */ {"var60", "undefined"}, + /* 61 */ {"var61", "undefined"}, + /* 62 */ {"var62", "undefined"}, + /* 63 */ {"var63", "undefined"}, + /* 64 */ {"var64", "undefined"}, + /* 65 */ {"var65", "undefined"}, + /* 66 */ {"var66", "undefined"}, + /* 67 */ {"var67", "undefined"}, + /* 68 */ {"var68", "undefined"}, + /* 69 */ {"var69", "undefined"}, + /* 70 */ {"var70", "undefined"}, + /* 71 */ {"var71", "undefined"}, + /* 72 */ {"var72", "undefined"}, + /* 73 */ {"var73", "undefined"}, + /* 74 */ {"var74", "undefined"}, + /* 75 */ {"var75", "undefined"}, + /* 76 */ {"var76", "undefined"}, + /* 77 */ {"var77", "undefined"}, + /* 78 */ {"var78", "undefined"}, + /* 79 */ {"var79", "undefined"}, + /* 80 */ {"var80", "undefined"}, + /* 81 */ {"var81", "undefined"}, + /* 82 */ {"var82", "undefined"}, + /* 83 */ {"var83", "undefined"}, + /* 84 */ {"var84", "undefined"}, + /* 85 */ {"var85", "undefined"}, + /* 86 */ {"var86", "undefined"}, + /* 87 */ {"var87", "undefined"}, + /* 88 */ {"var88", "undefined"}, + /* 89 */ {"var89", "undefined"}, + /* 90 */ {"var90", "undefined"}, + /* 91 */ {"var91", "undefined"}, + /* 92 */ {"var92", "undefined"}, + /* 93 */ {"var93", "undefined"}, + /* 94 */ {"var94", "undefined"}, + /* 95 */ {"var95", "undefined"}, + /* 96 */ {"var96", "undefined"}, + /* 97 */ {"var97", "undefined"}, + /* 98 */ {"var98", "undefined"}, + /* 99 */ {"var99", "undefined"}, + /* 100 */ {"var100", "undefined"}, + /* 101 */ {"var101", "undefined"}, + /* 102 */ {"var102", "undefined"}, + /* 103 */ {"var103", "undefined"}, + /* 104 */ {"var104", "undefined"}, + /* 105 */ {"var105", "undefined"}, + /* 106 */ {"var106", "undefined"}, + /* 107 */ {"var107", "undefined"}, + /* 108 */ {"var108", "undefined"}, + /* 109 */ {"var109", "undefined"}, + /* 110 */ {"var110", "undefined"}, + /* 111 */ {"var111", "undefined"}, + /* 112 */ {"var112", "undefined"}, + /* 113 */ {"var113", "undefined"}, + /* 114 */ {"var114", "undefined"}, + /* 115 */ {"var115", "undefined"}, + /* 116 */ {"var116", "undefined"}, + /* 117 */ {"var117", "undefined"}, + /* 118 */ {"var118", "undefined"}, + /* 119 */ {"var119", "undefined"}, + /* 120 */ {"var120", "undefined"}, + /* 121 */ {"var121", "undefined"}, + /* 122 */ {"var122", "undefined"}, + /* 123 */ {"var123", "undefined"}, + /* 124 */ {"var124", "undefined"}, + /* 125 */ {"var125", "undefined"}, + /* 126 */ {"var126", "undefined"}, + /* 127 */ {"var127", "undefined"}, + /* 128 */ {"var128", "undefined"}, + /* 129 */ {"Z", "Geopotential [m**2 s**-2]"}, + /* 130 */ {"T", "Temperature [K]"}, + /* 131 */ {"U", "U velocity [m s**-1]"}, + /* 132 */ {"V", "V velocity [m s**-1]"}, + /* 133 */ {"Q", "Specific humidity [kg kg**-1]"}, + /* 134 */ {"SP", "Surface pressure [Pa]"}, + /* 135 */ {"var135", "undefined"}, + /* 136 */ {"var136", "undefined"}, + /* 137 */ {"TCWV", "Total column water vapour [kg m**-2]"}, + /* 138 */ {"VO", "Vorticity (relative) [s**-1]"}, + /* 139 */ {"var139", "undefined"}, + /* 140 */ {"var140", "undefined"}, + /* 141 */ {"SD", "Snow depth [m of water equivalent]"}, + /* 142 */ {"LSP", "Large-scale precipitation [m]"}, + /* 143 */ {"CP", "Convective precipitation [m]"}, + /* 144 */ {"SF", "Snowfall [m of water equivalent]"}, + /* 145 */ {"var145", "undefined"}, + /* 146 */ {"SSHF", "Surface sensible heat flux [W m**-2 s]"}, + /* 147 */ {"SLHF", "Surface latent heat flux [W m**-2 s]"}, + /* 148 */ {"var148", "undefined"}, + /* 149 */ {"TSW", "Total soil wetness [m]"}, + /* 150 */ {"var150", "undefined"}, + /* 151 */ {"MSL", "Mean sea level pressure [Pa]"}, + /* 152 */ {"var152", "undefined"}, + /* 153 */ {"var153", "undefined"}, + /* 154 */ {"var154", "undefined"}, + /* 155 */ {"D", "Divergence [s**-1]"}, + /* 156 */ {"var156", "undefined"}, + /* 157 */ {"var157", "undefined"}, + /* 158 */ {"var158", "undefined"}, + /* 159 */ {"var159", "undefined"}, + /* 160 */ {"var160", "undefined"}, + /* 161 */ {"var161", "undefined"}, + /* 162 */ {"var162", "undefined"}, + /* 163 */ {"var163", "undefined"}, + /* 164 */ {"TCC", "Total cloud cover [(0 - 1)]"}, + /* 165 */ {"10U", "10 metre U wind component [m s**-1]"}, + /* 166 */ {"10V", "10 metre V wind component [m s**-1]"}, + /* 167 */ {"2T", "2 metre temperature [K]"}, + /* 168 */ {"2D", "2 metre dewpoint temperature [K]"}, + /* 169 */ {"var169", "undefined"}, + /* 170 */ {"var170", "undefined"}, + /* 171 */ {"var171", "undefined"}, + /* 172 */ {"LSM", "Land-sea mask [(0 - 1)]"}, + /* 173 */ {"var173", "undefined"}, + /* 174 */ {"var174", "undefined"}, + /* 175 */ {"var175", "undefined"}, + /* 176 */ {"SSR", "Surface solar radiation [J m**-2 s]"}, + /* 177 */ {"STR", "Surface thermal radiation [J m**-2 s]"}, + /* 178 */ {"TSR", "Top solar radiation [J m**-2 s]"}, + /* 179 */ {"TTR", "Top thermal radiation [J m**-2 s]"}, + /* 180 */ {"EWSS", "East-West surface stress [N m**-2 s]"}, + /* 181 */ {"NSSS", "North-South surface stress [N m**-2 s]"}, + /* 182 */ {"E", "Evaporation [m of water]"}, + /* 183 */ {"var183", "undefined"}, + /* 184 */ {"var184", "undefined"}, + /* 185 */ {"var185", "undefined"}, + /* 186 */ {"var186", "undefined"}, + /* 187 */ {"var187", "undefined"}, + /* 188 */ {"var188", "undefined"}, + /* 189 */ {"var189", "undefined"}, + /* 190 */ {"var190", "undefined"}, + /* 191 */ {"var191", "undefined"}, + /* 192 */ {"var192", "undefined"}, + /* 193 */ {"var193", "undefined"}, + /* 194 */ {"var194", "undefined"}, + /* 195 */ {"var195", "undefined"}, + /* 196 */ {"var196", "undefined"}, + /* 197 */ {"var197", "undefined"}, + /* 198 */ {"var198", "undefined"}, + /* 199 */ {"var199", "undefined"}, + /* 200 */ {"var200", "undefined"}, + /* 201 */ {"var201", "undefined"}, + /* 202 */ {"var202", "undefined"}, + /* 203 */ {"var203", "undefined"}, + /* 204 */ {"var204", "undefined"}, + /* 205 */ {"RO", "Runoff [m]"}, + /* 206 */ {"var206", "undefined"}, + /* 207 */ {"var207", "undefined"}, + /* 208 */ {"var208", "undefined"}, + /* 209 */ {"var209", "undefined"}, + /* 210 */ {"var210", "undefined"}, + /* 211 */ {"var211", "undefined"}, + /* 212 */ {"var212", "undefined"}, + /* 213 */ {"var213", "undefined"}, + /* 214 */ {"var214", "undefined"}, + /* 215 */ {"var215", "undefined"}, + /* 216 */ {"var216", "undefined"}, + /* 217 */ {"var217", "undefined"}, + /* 218 */ {"var218", "undefined"}, + /* 219 */ {"var219", "undefined"}, + /* 220 */ {"var220", "undefined"}, + /* 221 */ {"var221", "undefined"}, + /* 222 */ {"var222", "undefined"}, + /* 223 */ {"var223", "undefined"}, + /* 224 */ {"var224", "undefined"}, + /* 225 */ {"var225", "undefined"}, + /* 226 */ {"var226", "undefined"}, + /* 227 */ {"var227", "undefined"}, + /* 228 */ {"var228", "undefined"}, + /* 229 */ {"var229", "undefined"}, + /* 230 */ {"var230", "undefined"}, + /* 231 */ {"var231", "undefined"}, + /* 232 */ {"var232", "undefined"}, + /* 233 */ {"var233", "undefined"}, + /* 234 */ {"var234", "undefined"}, + /* 235 */ {"var235", "undefined"}, + /* 236 */ {"var236", "undefined"}, + /* 237 */ {"var237", "undefined"}, + /* 238 */ {"var238", "undefined"}, + /* 239 */ {"var239", "undefined"}, + /* 240 */ {"var240", "undefined"}, + /* 241 */ {"var241", "undefined"}, + /* 242 */ {"var242", "undefined"}, + /* 243 */ {"var243", "undefined"}, + /* 244 */ {"var244", "undefined"}, + /* 245 */ {"var245", "undefined"}, + /* 246 */ {"var246", "undefined"}, + /* 247 */ {"var247", "undefined"}, + /* 248 */ {"var248", "undefined"}, + /* 249 */ {"var249", "undefined"}, + /* 250 */ {"var250", "undefined"}, + /* 251 */ {"var251", "undefined"}, + /* 252 */ {"var252", "undefined"}, + /* 253 */ {"var253", "undefined"}, + /* 254 */ {"var254", "undefined"}, + /* 255 */ {"var255", "Indicates a missing value []"}, }; -const struct ParmTable parm_table_mdl_nceptab[256] = { - /* 0 */ {"var0", "undefined"}, - /* 1 */ {"PRES", "Pressure [Pa]"}, - /* 2 */ {"PRMSL", "Pressure reduced to MSL [Pa]"}, - /* 3 */ {"PTEND", "Pressure tendency [Pa/s]"}, - /* 4 */ {"PVORT", "Pot. vorticity [km^2/kg/s]"}, - /* 5 */ {"ICAHT", "ICAO Standard Atmosphere Reference Height [M]"}, - /* 6 */ {"GP", "Geopotential [m^2/s^2]"}, - /* 7 */ {"HGT", "Geopotential height [gpm]"}, - /* 8 */ {"DIST", "Geometric height [m]"}, - /* 9 */ {"HSTDV", "Std dev of height [m]"}, - /* 10 */ {"TOZNE", "Total ozone [Dobson]"}, - /* 11 */ {"TMP", "Temp. [K]"}, - /* 12 */ {"VTMP", "Virtual temp. [K]"}, - /* 13 */ {"POT", "Potential temp. [K]"}, - /* 14 */ {"EPOT", "Pseudo-adiabatic pot. temp. [K]"}, - /* 15 */ {"TMAX", "Max. temp. [K]"}, - /* 16 */ {"TMIN", "Min. temp. [K]"}, - /* 17 */ {"DPT", "Dew point temp. [K]"}, - /* 18 */ {"DEPR", "Dew point depression [K]"}, - /* 19 */ {"LAPR", "Lapse rate [K/m]"}, - /* 20 */ {"VIS", "Visibility [m]"}, - /* 21 */ {"RDSP1", "Radar spectra (1) [non-dim]"}, - /* 22 */ {"RDSP2", "Radar spectra (2) [non-dim]"}, - /* 23 */ {"RDSP3", "Radar spectra (3) [non-dim]"}, - /* 24 */ {"PLI", "Parcel lifted index (to 500 hPa) [K]"}, - /* 25 */ {"TMPA", "Temp. anomaly [K]"}, - /* 26 */ {"PRESA", "Pressure anomaly [Pa]"}, - /* 27 */ {"GPA", "Geopotential height anomaly [gpm]"}, - /* 28 */ {"WVSP1", "Wave spectra (1) [non-dim]"}, - /* 29 */ {"WVSP2", "Wave spectra (2) [non-dim]"}, - /* 30 */ {"WVSP3", "Wave spectra (3) [non-dim]"}, - /* 31 */ {"WDIR", "Wind direction [deg]"}, - /* 32 */ {"WIND", "Wind speed [m/s]"}, - /* 33 */ {"UGRD", "u wind [m/s]"}, - /* 34 */ {"VGRD", "v wind [m/s]"}, - /* 35 */ {"STRM", "Stream function [m^2/s]"}, - /* 36 */ {"VPOT", "Velocity potential [m^2/s]"}, - /* 37 */ {"MNTSF", "Montgomery stream function [m^2/s^2]"}, - /* 38 */ {"SGCVV", "Sigma coord. vertical velocity [/s]"}, - /* 39 */ {"VVEL", "Pressure vertical velocity [Pa/s]"}, - /* 40 */ {"DZDT", "Geometric vertical velocity [m/s]"}, - /* 41 */ {"ABSV", "Absolute vorticity [/s]"}, - /* 42 */ {"ABSD", "Absolute divergence [/s]"}, - /* 43 */ {"RELV", "Relative vorticity [/s]"}, - /* 44 */ {"RELD", "Relative divergence [/s]"}, - /* 45 */ {"VUCSH", "Vertical u shear [/s]"}, - /* 46 */ {"VVCSH", "Vertical v shear [/s]"}, - /* 47 */ {"DIRC", "Direction of current [deg]"}, - /* 48 */ {"SPC", "Speed of current [m/s]"}, - /* 49 */ {"UOGRD", "u of current [m/s]"}, - /* 50 */ {"VOGRD", "v of current [m/s]"}, - /* 51 */ {"SPFH", "Specific humidity [kg/kg]"}, - /* 52 */ {"RH", "Relative humidity [%]"}, - /* 53 */ {"MIXR", "Humidity mixing ratio [kg/kg]"}, - /* 54 */ {"PWAT", "Precipitable water [kg/m^2]"}, - /* 55 */ {"VAPP", "Vapor pressure [Pa]"}, - /* 56 */ {"SATD", "Saturation deficit [Pa]"}, - /* 57 */ {"EVP", "Evaporation [kg/m^2]"}, - /* 58 */ {"CICE", "Cloud Ice [kg/m^2]"}, - /* 59 */ {"PRATE", "Precipitation rate [kg/m^2/s]"}, - /* 60 */ {"TSTM", "Thunderstorm probability [%]"}, - /* 61 */ {"APCP", "Total precipitation [kg/m^2]"}, - /* 62 */ {"NCPCP", "Large scale precipitation [kg/m^2]"}, - /* 63 */ {"ACPCP", "Convective precipitation [kg/m^2]"}, - /* 64 */ {"SRWEQ", "Snowfall rate water equiv. [kg/m^2/s]"}, - /* 65 */ {"WEASD", "Accum. snow [kg/m^2]"}, - /* 66 */ {"SNOD", "Snow depth [m]"}, - /* 67 */ {"MIXHT", "Mixed layer depth [m]"}, - /* 68 */ {"TTHDP", "Transient thermocline depth [m]"}, - /* 69 */ {"MTHD", "Main thermocline depth [m]"}, - /* 70 */ {"MTHA", "Main thermocline anomaly [m]"}, - /* 71 */ {"TCDC", "Total cloud cover [%]"}, - /* 72 */ {"CDCON", "Convective cloud cover [%]"}, - /* 73 */ {"LCDC", "Low level cloud cover [%]"}, - /* 74 */ {"MCDC", "Mid level cloud cover [%]"}, - /* 75 */ {"HCDC", "High level cloud cover [%]"}, - /* 76 */ {"CWAT", "Cloud water [kg/m^2]"}, - /* 77 */ {"BLI", "Best lifted index (to 500 hPa) [K]"}, - /* 78 */ {"SNOC", "Convective snow [kg/m^2]"}, - /* 79 */ {"SNOL", "Large scale snow [kg/m^2]"}, - /* 80 */ {"WTMP", "Water temp. [K]"}, - /* 81 */ {"LAND", "Land cover (land=1;sea=0) [fraction]"}, - /* 82 */ {"DSLM", "Deviation of sea level from mean [m]"}, - /* 83 */ {"SFCR", "Surface roughness [m]"}, - /* 84 */ {"ALBDO", "Albedo [%]"}, - /* 85 */ {"TSOIL", "Soil temp. [K]"}, - /* 86 */ {"SOILM", "Soil moisture content [kg/m^2]"}, - /* 87 */ {"VEG", "Vegetation [%]"}, - /* 88 */ {"SALTY", "Salinity [kg/kg]"}, - /* 89 */ {"DEN", "Density [kg/m^3]"}, - /* 90 */ {"WATR", "Water runoff [kg/m^2]"}, - /* 91 */ {"ICEC", "Ice concentration (ice=1;no ice=0) [fraction]"}, - /* 92 */ {"ICETK", "Ice thickness [m]"}, - /* 93 */ {"DICED", "Direction of ice drift [deg]"}, - /* 94 */ {"SICED", "Speed of ice drift [m/s]"}, - /* 95 */ {"UICE", "u of ice drift [m/s]"}, - /* 96 */ {"VICE", "v of ice drift [m/s]"}, - /* 97 */ {"ICEG", "Ice growth rate [m/s]"}, - /* 98 */ {"ICED", "Ice divergence [/s]"}, - /* 99 */ {"SNOM", "Snow melt [kg/m^2]"}, - /* 100 */ {"HTSGW", "Sig height of wind waves and swell [m]"}, - /* 101 */ {"WVDIR", "Direction of wind waves [deg]"}, - /* 102 */ {"WVHGT", "Sig height of wind waves [m]"}, - /* 103 */ {"WVPER", "Mean period of wind waves [s]"}, - /* 104 */ {"SWDIR", "Direction of swell waves [deg]"}, - /* 105 */ {"SWELL", "Sig height of swell waves [m]"}, - /* 106 */ {"SWPER", "Mean period of swell waves [s]"}, - /* 107 */ {"DIRPW", "Primary wave direction [deg]"}, - /* 108 */ {"PERPW", "Primary wave mean period [s]"}, - /* 109 */ {"DIRSW", "Secondary wave direction [deg]"}, - /* 110 */ {"PERSW", "Secondary wave mean period [s]"}, - /* 111 */ {"NSWRS", "Net short wave (surface) [W/m^2]"}, - /* 112 */ {"NLWRS", "Net long wave (surface) [W/m^2]"}, - /* 113 */ {"NSWRT", "Net short wave (top) [W/m^2]"}, - /* 114 */ {"NLWRT", "Net long wave (top) [W/m^2]"}, - /* 115 */ {"LWAVR", "Long wave [W/m^2]"}, - /* 116 */ {"SWAVR", "Short wave [W/m^2]"}, - /* 117 */ {"GRAD", "Global radiation [W/m^2]"}, - /* 118 */ {"BRTMP", "Brightness temperature [K]"}, - /* 119 */ {"LWRAD", "Radiance with respect to wave no. [W/m/sr]"}, - /* 120 */ {"SWRAD", "Radiance with respect ot wave len. [W/m^3/sr]"}, - /* 121 */ {"LHTFL", "Latent heat flux [W/m^2]"}, - /* 122 */ {"SHTFL", "Sensible heat flux [W/m^2]"}, - /* 123 */ {"BLYDP", "Boundary layer dissipation [W/m^2]"}, - /* 124 */ {"UFLX", "Zonal momentum flux [N/m^2]"}, - /* 125 */ {"VFLX", "Meridional momentum flux [N/m^2]"}, - /* 126 */ {"WMIXE", "Wind mixing energy [J]"}, - /* 127 */ {"IMGD", "Image data []"}, - /* 128 */ {"TMPF", "TEMPERATURE (Fahrenheit) [F]"}, - /* 129 */ {"MAXK", "DAYTIME MAX TEMP (MAX) (Kelvin) [K]"}, - /* 130 */ {"MAXF", "DAYTIME MAX TEMP (MAX) (deg F) [F]"}, - /* 131 */ {"NMAXK", "NORMAL MAX TEMPERATURE (Kelvin) [K]"}, - /* 132 */ {"NMAXF", "NORMAL MAX TEMPERATURE (deg F) [F]"}, - /* 133 */ {"DMAXK", "DEPARTURE FROM NORMAL MAX (K) [K]"}, - /* 134 */ {"DMAXF", "DEPARTURE FROM NORMAL MAX (deg F) [F]"}, - /* 135 */ {"MINK", "NIGHTTIME MIN TEMP (MIN) (Kelvin) [K]"}, - /* 136 */ {"MINF", "NIGHTTIME MIN TEMP (MIN) (deg F) [F]"}, - /* 137 */ {"NMINK", "NORMAL MIN TEMPERATURE (Kelvin) [K]"}, - /* 138 */ {"NMINF", "NORMAL NIGHTTIME MIN TEMP (deg F) [F]"}, - /* 139 */ {"DMINK", "DEPARTURE FROM NORMAL MIN (K) [K]"}, - /* 140 */ {"DMINF", "DEPARTURE FROM NORMAL MIN (deg F) [F]"}, - /* 141 */ {"DWPF", "DEW POINT TEMPERATURE (deg F) [F]"}, - /* 142 */ {"DPDF", "DEW POINT DEPRESSION (deg F) [F]"}, - /* 143 */ {"HTINF", "HEAT INDEX (deg F) [F]"}, - /* 144 */ {"WNCHF", "WIND CHILL (deg F) [F]"}, - /* 145 */ {"var145", "undefined"}, - /* 146 */ {"POP", "PROB OF 0.01 IN. OF PRECIP (PoP) [%]"}, - /* 147 */ {"PQPF2", "PROB OF QPF >= 0.10 INCHES [%]"}, - /* 148 */ {"PQPF3", "PROB OF QPF >= 0.25 INCHES [%]"}, - /* 149 */ {"PQPF4", "PROB OF QPF >= 0.50 INCHES [%]"}, - /* 150 */ {"PQPF5", "PROB OF QPF >= 1.00 INCHES [%]"}, - /* 151 */ {"PQPF6", "PROB OF QPF >= 2.00 INCHES [%]"}, - /* 152 */ {"PQPF7", "PROB OF QPF >= 3.00 INCHES FUTURE [%]"}, - /* 153 */ {"BQPF", "BEST CATEGORY OF QPF [num]"}, - /* 154 */ {"NPOP", "NML REL. FREQ. OF 0.01 IN OF PCP [%]"}, - /* 155 */ {"DPOP", "DEPARTURE FROM NML OF 0.01 POP [%]"}, - /* 156 */ {"PCPM", "EXPECTED VALUE OF PRECIPITATION [mm]"}, - /* 157 */ {"PCPI", "EXPECTED VALUE OF PRECIPITATION [in]"}, - /* 158 */ {"CPCPM", "CONDITIONAL EXPECTED PRECIP AMT [mm]"}, - /* 159 */ {"CPCPI", "CONDITIONAL EXPECTED PRECIP AMT [in]"}, - /* 160 */ {"PSNA1", "PROB OF SNOW AMOUNT >= 0.10 [%]"}, - /* 161 */ {"PSNA2", "PROB OF SNOW AMOUNT >= 2 INCHES [%]"}, - /* 162 */ {"PSNA3", "PROB OF SNOW AMOUNT >= 4 INCHES [%]"}, - /* 163 */ {"PSNA4", "PROB OF SNOW AMOUNT >= 6 INCHES [%]"}, - /* 164 */ {"PSNA5", "PROB OF SNOW AMOUNT >= 8 INCHES [%]"}, - /* 165 */ {"BSNA", "BEST CATEGORY FOR SNOW AMOUNT [num]"}, - /* 166 */ {"SNWM", "EXPECTED VALUE OF SNOW AMOUNT [mm]"}, - /* 167 */ {"SNWI", "EXPECTED VALUE OF SNOW AMOUNT [in]"}, - /* 168 */ {"MWSPK", "INFLATED MAX WIND SPEED (knots) [kts]"}, - /* 169 */ {"IWSPM", "INFLATED WIND SPEED (meter/sec) [m/s]"}, - /* 170 */ {"SKNT", "INFLATED WIND SPEED (knots) [kts]"}, - /* 171 */ {"PWSP1", "PROB OF MAX WIND SPEED 0-12 kts [%]"}, - /* 172 */ {"PWSP2", "PROB OF MAX WIND SPEED 13-21 kts [%]"}, - /* 173 */ {"PWSP3", "PROB OF MAX WIND SPEED 22-31 kts [%]"}, - /* 174 */ {"PWSP4", "PROB OF MAX WIND SPEED >=32 kts [%]"}, - /* 175 */ {"WSPDC", "CATEGORICAL MAX WIND SPEED [num]"}, - /* 176 */ {"XSPDM", "EXPECTED VALUE OF MAX WIND SPEED [m/s]"}, - /* 177 */ {"XSPDK", "EXPECTED VALUE OF MAX WIND SPEED [kts]"}, - /* 178 */ {"PWDRN", "PROB OF WIND DIRECTION NORTH [%]"}, - /* 179 */ {"PWDRNE", "PROB OF WIND DIRECTION NORTHEAST [%]"}, - /* 180 */ {"PWDRE", "PROB OF WIND DIRECTION EAST [%]"}, - /* 181 */ {"PWDRSE", "PROB OF WIND DIRECTION SOUTHEAST [%]"}, - /* 182 */ {"PWDRS", "PROB OF WIND DIRECTION SOUTH [%]"}, - /* 183 */ {"PWDRSW", "PROB OF WIND DIRECTION SOUTHWEST [%]"}, - /* 184 */ {"PWDRW", "PROB OF WIND DIRECTION WEST [%]"}, - /* 185 */ {"PWDRNW", "PROB OF WIND DIRECTION NORTHWEST [%]"}, - /* 186 */ {"WDIRC", "CATEGORICAL WIND DIRECTION [num]"}, - /* 187 */ {"var187", "undefined"}, - /* 188 */ {"PSKCL", "PROB OF TOTAL SKY"}, - /* 189 */ {"PSKFW", "PROB OF TOTAL SKY"}, - /* 190 */ {"PSKSC", "PROB OF TOTAL SKY"}, - /* 191 */ {"PSKBK", "PROB OF TOTAL SKY"}, - /* 192 */ {"PSKOV", "PROB OF TOTAL SKY"}, - /* 193 */ {"SKYC", "CATEGORICAL TOTAL SKY COVER [num]"}, - /* 194 */ {"MSKCL", "PROB MEAN SKY CVR"}, - /* 195 */ {"MSKOV", "PROB MEAN SKY CVR"}, - /* 196 */ {"MSKMC", "PROB MEAN SKY CVR"}, - /* 197 */ {"MSKPC", "PROB MEAN SKY CVR"}, - /* 198 */ {"MSKMO", "PROB MEAN SKY CVR"}, - /* 199 */ {"MSKYC", "CATEGORICAL MEAN SKY COVER [num]"}, - /* 200 */ {"PCIG1", "PROB OF CIG HGT < 200 FT [%]"}, - /* 201 */ {"PCIG2", "PROB OF CIG HGT 200-400 FT [%]"}, - /* 202 */ {"PCIG3", "PROB OF CIG HGT 500-900 FT [%]"}, - /* 203 */ {"PCIG4", "PROB OF CIG HGT 1000-3000 FT [%]"}, - /* 204 */ {"PCIG5", "PROB OF CIG HGT 3100-6500 FT [%]"}, - /* 205 */ {"PCIG6", "PROB OF CIG HGT 6600-12000 FT [%]"}, - /* 206 */ {"PCIG7", "PROB OF CIG HGT > 12000 FT [%]"}, - /* 207 */ {"BCIG", "BEST CATEGORY OF CEILING HEIGHT [num]"}, - /* 208 */ {"PVIS1", "PROB OF VIS <=1/4 MILE [%]"}, - /* 209 */ {"PVIS2", "PROB OF VIS <=1/2 MILE [%]"}, - /* 210 */ {"PVIS3", "PROB OF VIS <=7/8 MILE [%]"}, - /* 211 */ {"PVIS4", "PROB OF VIS <=2 3/4 MILES [%]"}, - /* 212 */ {"PVIS5", "PROB OF VIS <=5 MILES [%]"}, - /* 213 */ {"PVIS6", "PROB OF VIS <=6 MILES [%]"}, - /* 214 */ {"VISC", "CATEGORICAL VISIBILITY [num]"}, - /* 215 */ {"POBVN", "PROB OF OBSTRUCTION TO VIS"}, - /* 216 */ {"POBVH", "PROB OF OBSTRUCTION TO VIS"}, - /* 217 */ {"POBVM", "PROB OF OBSTRUCTION TO VIS"}, - /* 218 */ {"POBVF", "PROB OF OBSTRUCTION TO VIS"}, - /* 219 */ {"POVBL", "PROB OF BLOWING OBVIS [%]"}, - /* 220 */ {"OBVC", "BEST CATEGORY OF OBVIS [num]"}, - /* 221 */ {"var221", "undefined"}, - /* 222 */ {"NTSM", "NORMAL PROB OF THUNDERSTORMS [%]"}, - /* 223 */ {"CSVR", "COND PROB OF SEVERE WEATHER [%]"}, - /* 224 */ {"USVR", "UNCOND PROB OF SEVERE WX [%]"}, - /* 225 */ {"NSVR", "NORMAL PROB OF SEVERE WX [%]"}, - /* 226 */ {"UHAI", "UNCONDITIONAL PROB OF HAIL [%]"}, - /* 227 */ {"UTOR", "UNCONDITIONAL PROB OF TORNADO [%]"}, - /* 228 */ {"UTSW", "UNCOND PROB OF DAMAGING WIND [%]"}, - /* 229 */ {"CFZI", "COND PROB FRZING PRECIP (INSTANT) [%]"}, - /* 230 */ {"UFZI", "UNCND PROB FRZING PRECIP (INSTNT) [%]"}, - /* 231 */ {"CZNI", "COND PROB FROZEN PRECIP (INSTANT) [%]"}, - /* 232 */ {"UZNI", "UNCND PROB FROZEN PRECIP (INSTNT) [%]"}, - /* 233 */ {"CLQI", "COND PROB LIQUID PRECIP (INSTANT) [%]"}, - /* 234 */ {"ULQI", "UNCND PROB LIQUID PRECIP (INSTNT) [%]"}, - /* 235 */ {"PTYPI", "CATEGORICAL PRECIP TYPE (INSTANT) [num]"}, - /* 236 */ {"CPOZP", "COND PROB OF FRZING PRECIP [%]"}, - /* 237 */ {"UPOZP", "UNCOND PROB OF FRZING PRECIP [%]"}, - /* 238 */ {"CPOS", "COND PROB OF SNOW (CPoS) [%]"}, - /* 239 */ {"UPOS", "UNCOND PROB OF SNOW (CPoS) [%]"}, - /* 240 */ {"CPORS", "COND PROB OF RAIN/SNOW MIXED [%]"}, - /* 241 */ {"UPORS", "UNCOND PROB OF RAIN/SNOW MIXED [%]"}, - /* 242 */ {"CPORA", "COND PROB OF RAIN [%]"}, - /* 243 */ {"var243", "undefined"}, - /* 244 */ {"BPCPT", "BEST CATEGORY OF PRECIP TYPE [num]"}, - /* 245 */ {"POPOH", "POPO PRECIP OCCURRING AT AN HOUR [%]"}, - /* 246 */ {"POPOP", "POPO PRECIP DURING A PERIOD [%]"}, - /* 247 */ {"CPDRZ", "COND PROB OF DRIZZLE [%]"}, - /* 248 */ {"CPSTY", "COND PROB OF CONT (STEADY) PRECIP [%]"}, - /* 249 */ {"CPSHW", "COND PROB OF SHOWERS [%]"}, - /* 250 */ {"BPCHR", "BEST CAT PRECIP CHARACTERISTIC [num]"}, - /* 251 */ {"SUNSH", "PERCENT OF POSSIBLE SUNSHINE [%]"}, - /* 252 */ {"HRSUN", "HOURS OF SUNSHINE [hrs]"}, - /* 253 */ {"SCQP", "SCAN 0-3H CATEGORICAL QPF [num]"}, - /* 254 */ {"SCTS", "SCAN 0-3H C-G LIGHTNING PROB [%]"}, - /* 255 */ {"var255", "undefined"}, +const struct ParmTable parm_table_ecmwf_190[256] = { + /* 0 */ {"var0", "undefined"}, + /* 1 */ {"var1", "undefined"}, + /* 2 */ {"var2", "undefined"}, + /* 3 */ {"var3", "undefined"}, + /* 4 */ {"var4", "undefined"}, + /* 5 */ {"var5", "undefined"}, + /* 6 */ {"var6", "undefined"}, + /* 7 */ {"var7", "undefined"}, + /* 8 */ {"var8", "undefined"}, + /* 9 */ {"var9", "undefined"}, + /* 10 */ {"var10", "undefined"}, + /* 11 */ {"var11", "undefined"}, + /* 12 */ {"var12", "undefined"}, + /* 13 */ {"var13", "undefined"}, + /* 14 */ {"var14", "undefined"}, + /* 15 */ {"var15", "undefined"}, + /* 16 */ {"var16", "undefined"}, + /* 17 */ {"var17", "undefined"}, + /* 18 */ {"var18", "undefined"}, + /* 19 */ {"var19", "undefined"}, + /* 20 */ {"var20", "undefined"}, + /* 21 */ {"var21", "undefined"}, + /* 22 */ {"var22", "undefined"}, + /* 23 */ {"var23", "undefined"}, + /* 24 */ {"var24", "undefined"}, + /* 25 */ {"var25", "undefined"}, + /* 26 */ {"var26", "undefined"}, + /* 27 */ {"var27", "undefined"}, + /* 28 */ {"var28", "undefined"}, + /* 29 */ {"var29", "undefined"}, + /* 30 */ {"var30", "undefined"}, + /* 31 */ {"var31", "undefined"}, + /* 32 */ {"var32", "undefined"}, + /* 33 */ {"var33", "undefined"}, + /* 34 */ {"var34", "undefined"}, + /* 35 */ {"var35", "undefined"}, + /* 36 */ {"var36", "undefined"}, + /* 37 */ {"var37", "undefined"}, + /* 38 */ {"var38", "undefined"}, + /* 39 */ {"var39", "undefined"}, + /* 40 */ {"var40", "undefined"}, + /* 41 */ {"var41", "undefined"}, + /* 42 */ {"var42", "undefined"}, + /* 43 */ {"var43", "undefined"}, + /* 44 */ {"var44", "undefined"}, + /* 45 */ {"var45", "undefined"}, + /* 46 */ {"var46", "undefined"}, + /* 47 */ {"var47", "undefined"}, + /* 48 */ {"var48", "undefined"}, + /* 49 */ {"var49", "undefined"}, + /* 50 */ {"var50", "undefined"}, + /* 51 */ {"var51", "undefined"}, + /* 52 */ {"var52", "undefined"}, + /* 53 */ {"var53", "undefined"}, + /* 54 */ {"var54", "undefined"}, + /* 55 */ {"var55", "undefined"}, + /* 56 */ {"var56", "undefined"}, + /* 57 */ {"var57", "undefined"}, + /* 58 */ {"var58", "undefined"}, + /* 59 */ {"var59", "undefined"}, + /* 60 */ {"var60", "undefined"}, + /* 61 */ {"var61", "undefined"}, + /* 62 */ {"var62", "undefined"}, + /* 63 */ {"var63", "undefined"}, + /* 64 */ {"var64", "undefined"}, + /* 65 */ {"var65", "undefined"}, + /* 66 */ {"var66", "undefined"}, + /* 67 */ {"var67", "undefined"}, + /* 68 */ {"var68", "undefined"}, + /* 69 */ {"var69", "undefined"}, + /* 70 */ {"var70", "undefined"}, + /* 71 */ {"var71", "undefined"}, + /* 72 */ {"var72", "undefined"}, + /* 73 */ {"var73", "undefined"}, + /* 74 */ {"var74", "undefined"}, + /* 75 */ {"var75", "undefined"}, + /* 76 */ {"var76", "undefined"}, + /* 77 */ {"var77", "undefined"}, + /* 78 */ {"var78", "undefined"}, + /* 79 */ {"var79", "undefined"}, + /* 80 */ {"var80", "undefined"}, + /* 81 */ {"var81", "undefined"}, + /* 82 */ {"var82", "undefined"}, + /* 83 */ {"var83", "undefined"}, + /* 84 */ {"var84", "undefined"}, + /* 85 */ {"var85", "undefined"}, + /* 86 */ {"var86", "undefined"}, + /* 87 */ {"var87", "undefined"}, + /* 88 */ {"var88", "undefined"}, + /* 89 */ {"var89", "undefined"}, + /* 90 */ {"var90", "undefined"}, + /* 91 */ {"var91", "undefined"}, + /* 92 */ {"var92", "undefined"}, + /* 93 */ {"var93", "undefined"}, + /* 94 */ {"var94", "undefined"}, + /* 95 */ {"var95", "undefined"}, + /* 96 */ {"var96", "undefined"}, + /* 97 */ {"var97", "undefined"}, + /* 98 */ {"var98", "undefined"}, + /* 99 */ {"var99", "undefined"}, + /* 100 */ {"var100", "undefined"}, + /* 101 */ {"var101", "undefined"}, + /* 102 */ {"var102", "undefined"}, + /* 103 */ {"var103", "undefined"}, + /* 104 */ {"var104", "undefined"}, + /* 105 */ {"var105", "undefined"}, + /* 106 */ {"var106", "undefined"}, + /* 107 */ {"var107", "undefined"}, + /* 108 */ {"var108", "undefined"}, + /* 109 */ {"var109", "undefined"}, + /* 110 */ {"var110", "undefined"}, + /* 111 */ {"var111", "undefined"}, + /* 112 */ {"var112", "undefined"}, + /* 113 */ {"var113", "undefined"}, + /* 114 */ {"var114", "undefined"}, + /* 115 */ {"var115", "undefined"}, + /* 116 */ {"var116", "undefined"}, + /* 117 */ {"var117", "undefined"}, + /* 118 */ {"var118", "undefined"}, + /* 119 */ {"var119", "undefined"}, + /* 120 */ {"var120", "undefined"}, + /* 121 */ {"var121", "undefined"}, + /* 122 */ {"var122", "undefined"}, + /* 123 */ {"var123", "undefined"}, + /* 124 */ {"var124", "undefined"}, + /* 125 */ {"var125", "undefined"}, + /* 126 */ {"var126", "undefined"}, + /* 127 */ {"var127", "undefined"}, + /* 128 */ {"var128", "undefined"}, + /* 129 */ {"Z", "Geopotential [m**2 s**-2]"}, + /* 130 */ {"T", "Temperature [K]"}, + /* 131 */ {"U", "U velocity [m s**-1]"}, + /* 132 */ {"V", "V velocity [m s**-1]"}, + /* 133 */ {"Q", "Specific humidity [kg kg**-1]"}, + /* 134 */ {"var134", "undefined"}, + /* 135 */ {"var135", "undefined"}, + /* 136 */ {"var136", "undefined"}, + /* 137 */ {"var137", "undefined"}, + /* 138 */ {"var138", "undefined"}, + /* 139 */ {"STL1", "Soil temperature level 1 [K]"}, + /* 140 */ {"var140", "undefined"}, + /* 141 */ {"SD", "Snow depth [m of water]"}, + /* 142 */ {"var142", "undefined"}, + /* 143 */ {"var143", "undefined"}, + /* 144 */ {"var144", "undefined"}, + /* 145 */ {"var145", "undefined"}, + /* 146 */ {"SSHF", "Surface sensible heat flux [W m**-2 s]"}, + /* 147 */ {"SLHF", "Surface latent heat flux [W m**-2 s]"}, + /* 148 */ {"var148", "undefined"}, + /* 149 */ {"var149", "undefined"}, + /* 150 */ {"var150", "undefined"}, + /* 151 */ {"MSL", "Mean sea level pressure [Pa]"}, + /* 152 */ {"var152", "undefined"}, + /* 153 */ {"var153", "undefined"}, + /* 154 */ {"var154", "undefined"}, + /* 155 */ {"var155", "undefined"}, + /* 156 */ {"var156", "undefined"}, + /* 157 */ {"var157", "undefined"}, + /* 158 */ {"var158", "undefined"}, + /* 159 */ {"var159", "undefined"}, + /* 160 */ {"var160", "undefined"}, + /* 161 */ {"var161", "undefined"}, + /* 162 */ {"var162", "undefined"}, + /* 163 */ {"var163", "undefined"}, + /* 164 */ {"TCC", "Total cloud cover [(0 - 1)]"}, + /* 165 */ {"10U", "10 metre U wind component [m s**-1]"}, + /* 166 */ {"10V", "10 metre V wind component [m s**-1]"}, + /* 167 */ {"2T", "2 metre temperature [K]"}, + /* 168 */ {"2D", "2 metre dewpoint temperature [K]"}, + /* 169 */ {"SSRD", "Downward surface solar radiation [W m**-2 s (W m**-2 for monthly means)]"}, + /* 170 */ {"CAP", "Field capacity [(0 - 1)]"}, + /* 171 */ {"WILT", "Wilting point [(0 - 1)]"}, + /* 172 */ {"LSM", "Land-sea mask [(0 - 1)]"}, + /* 173 */ {"SR", "Roughness length [(0 - 1)]"}, + /* 174 */ {"AL", "Albedo [(0 - 1)]"}, + /* 175 */ {"STRD", "Downward surface long wave radiation [W m**-2 s (W m**-2 for monthly means)]"}, + /* 176 */ {"SSR", "Surface net solar radiation [W m**-2 s (W m**-2 for monthly means)]"}, + /* 177 */ {"STR", "Surface net long wave radiation [W m**-2 s (W m**-2 for monthly means)]"}, + /* 178 */ {"TSR", "Top net solar radiation [W m**-2 s (W m**-2 for monthly means)]"}, + /* 179 */ {"TTR", "Top net long wave radiation [W m**-2 s (W m**-2 for monthly means)]"}, + /* 180 */ {"var180", "undefined"}, + /* 181 */ {"var181", "undefined"}, + /* 182 */ {"E", "Evaporation [m (m s**-1 for monthly means)]"}, + /* 183 */ {"var183", "undefined"}, + /* 184 */ {"var184", "undefined"}, + /* 185 */ {"var185", "undefined"}, + /* 186 */ {"var186", "undefined"}, + /* 187 */ {"var187", "undefined"}, + /* 188 */ {"var188", "undefined"}, + /* 189 */ {"var189", "undefined"}, + /* 190 */ {"var190", "undefined"}, + /* 191 */ {"var191", "undefined"}, + /* 192 */ {"var192", "undefined"}, + /* 193 */ {"var193", "undefined"}, + /* 194 */ {"var194", "undefined"}, + /* 195 */ {"var195", "undefined"}, + /* 196 */ {"var196", "undefined"}, + /* 197 */ {"var197", "undefined"}, + /* 198 */ {"var198", "undefined"}, + /* 199 */ {"var199", "undefined"}, + /* 200 */ {"var200", "undefined"}, + /* 201 */ {"MX2T", "Maximum 2 metre temperature [K]"}, + /* 202 */ {"MN2T", "Minimum 2 metre temperature [K]"}, + /* 203 */ {"var203", "undefined"}, + /* 204 */ {"var204", "undefined"}, + /* 205 */ {"var205", "undefined"}, + /* 206 */ {"var206", "undefined"}, + /* 207 */ {"var207", "undefined"}, + /* 208 */ {"var208", "undefined"}, + /* 209 */ {"var209", "undefined"}, + /* 210 */ {"var210", "undefined"}, + /* 211 */ {"var211", "undefined"}, + /* 212 */ {"var212", "undefined"}, + /* 213 */ {"var213", "undefined"}, + /* 214 */ {"var214", "undefined"}, + /* 215 */ {"var215", "undefined"}, + /* 216 */ {"var216", "undefined"}, + /* 217 */ {"var217", "undefined"}, + /* 218 */ {"var218", "undefined"}, + /* 219 */ {"var219", "undefined"}, + /* 220 */ {"var220", "undefined"}, + /* 221 */ {"var221", "undefined"}, + /* 222 */ {"var222", "undefined"}, + /* 223 */ {"var223", "undefined"}, + /* 224 */ {"var224", "undefined"}, + /* 225 */ {"var225", "undefined"}, + /* 226 */ {"var226", "undefined"}, + /* 227 */ {"var227", "undefined"}, + /* 228 */ {"TP", "Total precipitation [m (m s**-1 for monthly means)]"}, + /* 229 */ {"TSM", "Total soil moisture [m**3 m**-3]"}, + /* 230 */ {"var230", "undefined"}, + /* 231 */ {"var231", "undefined"}, + /* 232 */ {"var232", "undefined"}, + /* 233 */ {"var233", "undefined"}, + /* 234 */ {"var234", "undefined"}, + /* 235 */ {"var235", "undefined"}, + /* 236 */ {"var236", "undefined"}, + /* 237 */ {"var237", "undefined"}, + /* 238 */ {"var238", "undefined"}, + /* 239 */ {"var239", "undefined"}, + /* 240 */ {"var240", "undefined"}, + /* 241 */ {"var241", "undefined"}, + /* 242 */ {"var242", "undefined"}, + /* 243 */ {"var243", "undefined"}, + /* 244 */ {"var244", "undefined"}, + /* 245 */ {"var245", "undefined"}, + /* 246 */ {"var246", "undefined"}, + /* 247 */ {"var247", "undefined"}, + /* 248 */ {"var248", "undefined"}, + /* 249 */ {"var249", "undefined"}, + /* 250 */ {"var250", "undefined"}, + /* 251 */ {"var251", "undefined"}, + /* 252 */ {"var252", "undefined"}, + /* 253 */ {"var253", "undefined"}, + /* 254 */ {"var254", "undefined"}, + /* 255 */ {"var255", " []"}, +}; + +const struct ParmTable parm_table_ecmwf_200[256] = { + /* 0 */ {"var0", "undefined"}, + /* 1 */ {"STRF", "Stream function [m**2 s**-1]"}, + /* 2 */ {"VPOT", "Velocity potential [m**2 s**-1]"}, + /* 3 */ {"PT", "Potential temperature [K]"}, + /* 4 */ {"EQPT", "Equivalent potential temperature [K]"}, + /* 5 */ {"SEPT", "Saturated equivalent potential temperature [K]"}, + /* 6 */ {"var6", "undefined"}, + /* 7 */ {"var7", "undefined"}, + /* 8 */ {"var8", "undefined"}, + /* 9 */ {"var9", "undefined"}, + /* 10 */ {"var10", "undefined"}, + /* 11 */ {"UDVW", "U component of divergent wind [m s**-1]"}, + /* 12 */ {"VDVW", "V component of divergent wind [m s**-1]"}, + /* 13 */ {"URTW", "U component of rotational wind [m s**-1]"}, + /* 14 */ {"VRTW", "V component of rotational wind [m s**-1]"}, + /* 15 */ {"var15", "undefined"}, + /* 16 */ {"var16", "undefined"}, + /* 17 */ {"var17", "undefined"}, + /* 18 */ {"var18", "undefined"}, + /* 19 */ {"var19", "undefined"}, + /* 20 */ {"var20", "undefined"}, + /* 21 */ {"UCTP", "Unbalanced component of temperature [K]"}, + /* 22 */ {"UCLN", "Unbalanced component of logarithm of surface pressure []"}, + /* 23 */ {"UCDV", "Unbalanced component of divergence [s**-1]"}, + /* 24 */ {"var24", "Reserved for future unbalanced components []"}, + /* 25 */ {"var25", "Reserved for future unbalanced components []"}, + /* 26 */ {"CL", "Lake cover [(0 - 1)]"}, + /* 27 */ {"CVL", "Low vegetation cover [(0 - 1)]"}, + /* 28 */ {"CVH", "High vegetation cover [(0 - 1)]"}, + /* 29 */ {"TVL", "Type of low vegetation []"}, + /* 30 */ {"TVH", "Type of high vegetation []"}, + /* 31 */ {"CI", "Sea-ice cover [(0 - 1)]"}, + /* 32 */ {"ASN", "Snow albedo [(0 - 1)]"}, + /* 33 */ {"RSN", "Snow density [kg m**-3]"}, + /* 34 */ {"SSTK", "Sea surface temperature [K]"}, + /* 35 */ {"ISTL1", "Ice surface temperature layer 1 [K]"}, + /* 36 */ {"ISTL2", "Ice surface temperature layer 2 [K]"}, + /* 37 */ {"ISTL3", "Ice surface temperature layer 3 [K]"}, + /* 38 */ {"ISTL4", "Ice surface temperature layer 4 [K]"}, + /* 39 */ {"SWVL1", "Volumetric soil water layer 1 [m**3 m**-3]"}, + /* 40 */ {"SWVL2", "Volumetric soil water layer 2 [m**3 m**-3]"}, + /* 41 */ {"SWVL3", "Volumetric soil water layer 3 [m**3 m**-3]"}, + /* 42 */ {"SWVL4", "Volumetric soil water layer 4 [m**3 m**-3]"}, + /* 43 */ {"SLT", "Soil type []"}, + /* 44 */ {"ES", "Snow evaporation [m of water]"}, + /* 45 */ {"SMLT", "Snowmelt [m of water]"}, + /* 46 */ {"SDUR", "Solar duration [s]"}, + /* 47 */ {"DSRP", "Direct solar radiation [w m**-2]"}, + /* 48 */ {"MAGSS", "Magnitude of surface stress [N m**-2 s]"}, + /* 49 */ {"10FG", "10 metre wind gust [m s**-1]"}, + /* 50 */ {"LSPF", "Large-scale precipitation fraction [s]"}, + /* 51 */ {"MX2T24", "Maximum 2 metre temperature [K]"}, + /* 52 */ {"MN2T24", "Minimum 2 metre temperature [K]"}, + /* 53 */ {"MONT", "Montgomery potential [m**2 s**-2]"}, + /* 54 */ {"PRES", "Pressure [Pa]"}, + /* 55 */ {"MEAN2T24", "Mean 2 metre temperature in past 24 hours [K]"}, + /* 56 */ {"MN2D24", "Mean 2 metre dewpoint temperature in past 24 hours [K]"}, + /* 57 */ {"UVB", "Downward UV radiation at the surface [w m**-2 s]"}, + /* 58 */ {"PAR", "Photosynthetically active radiation at the surface [w m**-2 s]"}, + /* 59 */ {"CAPE", "Convective available potential energy [J kg**-1]"}, + /* 60 */ {"PV", "Potential vorticity [K m**2 kg**-1 s**-1]"}, + /* 61 */ {"TPO", "Total precipitation from observations [Millimetres*100 + number of stations]"}, + /* 62 */ {"OBCT", "Observation count []"}, + /* 63 */ {"var63", "Start time for skin temperature difference [s]"}, + /* 64 */ {"var64", "Finish time for skin temperature difference [s]"}, + /* 65 */ {"var65", "Skin temperature difference [K]"}, + /* 66 */ {"var66", "Leaf area index, low vegetation [m**2 / m**2]"}, + /* 67 */ {"var67", "Leaf area index, high vegetation [m**2 / m**2]"}, + /* 68 */ {"var68", "Minimum stomatal resistance, low vegetation [s m**-1]"}, + /* 69 */ {"var69", "Minimum stomatal resistance, high vegetation [s m**-1]"}, + /* 70 */ {"var70", "Biome cover, low vegetation [(0 - 1)]"}, + /* 71 */ {"var71", "Biome cover, high vegetation [(0 - 1)]"}, + /* 72 */ {"var72", "undefined"}, + /* 73 */ {"var73", "undefined"}, + /* 74 */ {"var74", "undefined"}, + /* 75 */ {"var75", "undefined"}, + /* 76 */ {"var76", "undefined"}, + /* 77 */ {"var77", "undefined"}, + /* 78 */ {"var78", "Total column liquid water [kg m**-2]"}, + /* 79 */ {"var79", "Total column ice water [kg m**-2]"}, + /* 80 */ {"var80", "Experimental product []"}, + /* 81 */ {"var81", "Experimental product []"}, + /* 82 */ {"var82", "Experimental product []"}, + /* 83 */ {"var83", "Experimental product []"}, + /* 84 */ {"var84", "Experimental product []"}, + /* 85 */ {"var85", "Experimental product []"}, + /* 86 */ {"var86", "Experimental product []"}, + /* 87 */ {"var87", "Experimental product []"}, + /* 88 */ {"var88", "Experimental product []"}, + /* 89 */ {"var89", "Experimental product []"}, + /* 90 */ {"var90", "Experimental product []"}, + /* 91 */ {"var91", "Experimental product []"}, + /* 92 */ {"var92", "Experimental product []"}, + /* 93 */ {"var93", "Experimental product []"}, + /* 94 */ {"var94", "Experimental product []"}, + /* 95 */ {"var95", "Experimental product []"}, + /* 96 */ {"var96", "Experimental product []"}, + /* 97 */ {"var97", "Experimental product []"}, + /* 98 */ {"var98", "Experimental product []"}, + /* 99 */ {"var99", "Experimental product []"}, + /* 100 */ {"var100", "Experimental product []"}, + /* 101 */ {"var101", "Experimental product []"}, + /* 102 */ {"var102", "Experimental product []"}, + /* 103 */ {"var103", "Experimental product []"}, + /* 104 */ {"var104", "Experimental product []"}, + /* 105 */ {"var105", "Experimental product []"}, + /* 106 */ {"var106", "Experimental product []"}, + /* 107 */ {"var107", "Experimental product []"}, + /* 108 */ {"var108", "Experimental product []"}, + /* 109 */ {"var109", "Experimental product []"}, + /* 110 */ {"var110", "Experimental product []"}, + /* 111 */ {"var111", "Experimental product []"}, + /* 112 */ {"var112", "Experimental product []"}, + /* 113 */ {"var113", "Experimental product []"}, + /* 114 */ {"var114", "Experimental product []"}, + /* 115 */ {"var115", "Experimental product []"}, + /* 116 */ {"var116", "Experimental product []"}, + /* 117 */ {"var117", "Experimental product []"}, + /* 118 */ {"var118", "Experimental product []"}, + /* 119 */ {"var119", "Experimental product []"}, + /* 120 */ {"var120", "Experimental product []"}, + /* 121 */ {"MX2T6", "Maximum temperature at 2 metres [K]"}, + /* 122 */ {"MN2T6", "Minimum temperature at 2 metres [K]"}, + /* 123 */ {"10FG6", "10 metre wind gust in the past 6 hours [m s**-1]"}, + /* 124 */ {"var124", "undefined"}, + /* 125 */ {"var125", "Vertically integrated total energy [J m**-2]"}, + /* 126 */ {"var126", "Generic parameter for sensitive area prediction [Various]"}, + /* 127 */ {"AT", "Atmospheric tide []"}, + /* 128 */ {"BV", "Budget values []"}, + /* 129 */ {"Z", "Geopotential [m**2 s**-2]"}, + /* 130 */ {"T", "Temperature [K]"}, + /* 131 */ {"U", "U velocity [m s**-1]"}, + /* 132 */ {"V", "V velocity [m s**-1]"}, + /* 133 */ {"Q", "Specific humidity [kg kg**-1]"}, + /* 134 */ {"SP", "Surface pressure [Pa]"}, + /* 135 */ {"W", "Vertical velocity [Pa s**-1]"}, + /* 136 */ {"TCW", "Total column water [kg m**-2]"}, + /* 137 */ {"TCWV", "Total column water vapour [kg m**-2]"}, + /* 138 */ {"VO", "Vorticity (relative) [s**-1]"}, + /* 139 */ {"STL1", "Soil temperature level 1 [K]"}, + /* 140 */ {"SWL1", "Soil wetness level 1 [m of water]"}, + /* 141 */ {"SD", "Snow depth [m of water equivalent]"}, + /* 142 */ {"LSP", "Stratiform precipitation (Large-scale precipitation) [m]"}, + /* 143 */ {"CP", "Convective precipitation [m]"}, + /* 144 */ {"SF", "Snowfall (convective + stratiform) [m of water equivalent]"}, + /* 145 */ {"BLD", "Boundary layer dissipation [W m**-2 s]"}, + /* 146 */ {"SSHF", "Surface sensible heat flux [W m**-2 s]"}, + /* 147 */ {"SLHF", "Surface latent heat flux [W m**-2 s]"}, + /* 148 */ {"CHNK", "Charnock []"}, + /* 149 */ {"SNR", "Surface net radiation [W m**-2 s]"}, + /* 150 */ {"TNR", "Top net radiation []"}, + /* 151 */ {"MSL", "Mean sea level pressure [Pa]"}, + /* 152 */ {"LNSP", "Logarithm of surface pressure []"}, + /* 153 */ {"SWHR", "Short-wave heating rate [K]"}, + /* 154 */ {"LWHR", "Long-wave heating rate [K]"}, + /* 155 */ {"D", "Divergence [s**-1]"}, + /* 156 */ {"GH", "Height [m]"}, + /* 157 */ {"R", "Relative humidity [%]"}, + /* 158 */ {"TSP", "Tendency of surface pressure [Pa s**-1]"}, + /* 159 */ {"BLH", "Boundary layer height [m]"}, + /* 160 */ {"SDOR", "Standard deviation of orography []"}, + /* 161 */ {"ISOR", "Anisotropy of sub-gridscale orography []"}, + /* 162 */ {"ANOR", "Angle of sub-gridscale orography [rad]"}, + /* 163 */ {"SLOR", "Slope of sub-gridscale orography []"}, + /* 164 */ {"TCC", "Total cloud cover [(0 - 1)]"}, + /* 165 */ {"10U", "10 metre U wind component [m s**-1]"}, + /* 166 */ {"10V", "10 metre V wind component [m s**-1]"}, + /* 167 */ {"2T", "2 metre temperature [K]"}, + /* 168 */ {"2D", "2 metre dewpoint temperature [K]"}, + /* 169 */ {"SSRD", "Surface solar radiation downwards [W m**-2 s]"}, + /* 170 */ {"STL2", "Soil temperature level 2 [K]"}, + /* 171 */ {"SWL2", "Soil wetness level 2 [m of water]"}, + /* 172 */ {"LSM", "Land-sea mask [(0 - 1)]"}, + /* 173 */ {"SR", "Surface roughness [m]"}, + /* 174 */ {"AL", "Albedo [(0 - 1)]"}, + /* 175 */ {"STRD", "Surface thermal radiation downwards [W m**-2 s]"}, + /* 176 */ {"SSR", "Surface solar radiation [W m**-2 s]"}, + /* 177 */ {"STR", "Surface thermal radiation [W m**-2 s]"}, + /* 178 */ {"TSR", "Top solar radiation [W m**-2 s]"}, + /* 179 */ {"TTR", "Top thermal radiation [W m**-2 s]"}, + /* 180 */ {"EWSS", "East-West surface stress [N m**-2 s]"}, + /* 181 */ {"NSSS", "North-South surface stress [N m**-2 s]"}, + /* 182 */ {"E", "Evaporation [m of water]"}, + /* 183 */ {"STL3", "Soil temperature level 3 [K]"}, + /* 184 */ {"SWL3", "Soil wetness level 3 [m of water]"}, + /* 185 */ {"CCC", "Convective cloud cover [(0 - 1)]"}, + /* 186 */ {"LCC", "Low cloud cover [(0 - 1)]"}, + /* 187 */ {"MCC", "Medium cloud cover [(0 - 1)]"}, + /* 188 */ {"HCC", "High cloud cover [(0 - 1)]"}, + /* 189 */ {"SUND", "Sunshine duration [s]"}, + /* 190 */ {"EWOV", "East-West component of sub-gridscale orographic variance [m**2]"}, + /* 191 */ {"NSOV", "North-South component of sub-gridscale orographic variance [m**2]"}, + /* 192 */ {"NWOV", "North-West/South-East component of sub-gridscale orographic variance [m**2]"}, + /* 193 */ {"NEOV", "North-East/South-West component of sub-gridscale orographic variance [m**2]"}, + /* 194 */ {"BTMP", "Brightness temperature [K]"}, + /* 195 */ {"LGWS", "Latitudinal component of gravity wave stress [N m**-2 s]"}, + /* 196 */ {"MGWS", "Meridional component of gravity wave stress [N m**-2 s]"}, + /* 197 */ {"GWD", "Gravity wave dissipation [W m**-2 s]"}, + /* 198 */ {"SRC", "Skin reservoir content [m of water]"}, + /* 199 */ {"VEG", "Vegetation fraction [(0 - 1)]"}, + /* 200 */ {"VSO", "Variance of sub-gridscale orography [m**2]"}, + /* 201 */ {"MX2T", "Maximum temperature at 2 metres since previous post-processing [K]"}, + /* 202 */ {"MN2T", "Minimum temperature at 2 metres since previous post-processing [K]"}, + /* 203 */ {"O3", "Ozone mass mixing ratio [kg kg**-1]"}, + /* 204 */ {"PAW", "Precipitation analysis weights []"}, + /* 205 */ {"RO", "Runoff [m]"}, + /* 206 */ {"TCO3", "Total column ozone [kg m**-2]"}, + /* 207 */ {"10SI", "10 metre wind speed [m s**-1]"}, + /* 208 */ {"TSRC", "Top net solar radiation, clear sky [W m**-2 s]"}, + /* 209 */ {"TTRC", "Top net thermal radiation, clear sky [W m**-2 s]"}, + /* 210 */ {"SSRC", "Surface net solar radiation, clear sky [W m**-2 s]"}, + /* 211 */ {"STRC", "Surface net thermal radiation, clear sky [W m**-2 s]"}, + /* 212 */ {"TISR", "TOA incident solar radiation [W m**-2 s]"}, + /* 213 */ {"var213", "undefined"}, + /* 214 */ {"DHR", "Diabatic heating by radiation [K]"}, + /* 215 */ {"DHVD", "Diabatic heating by vertical diffusion [K]"}, + /* 216 */ {"DHCC", "Diabatic heating by cumulus convection [K]"}, + /* 217 */ {"DHLC", "Diabatic heating large-scale condensation [K]"}, + /* 218 */ {"VDZW", "Vertical diffusion of zonal wind [m s**-1]"}, + /* 219 */ {"VDMW", "Vertical diffusion of meridional wind [m s**-1]"}, + /* 220 */ {"EWGD", "East-West gravity wave drag tendency [m s**-1]"}, + /* 221 */ {"NSGD", "North-South gravity wave drag tendency [m s**-1]"}, + /* 222 */ {"CTZW", "Convective tendency of zonal wind [m s**-1]"}, + /* 223 */ {"CTMW", "Convective tendency of meridional wind [m s**-1]"}, + /* 224 */ {"VDH", "Vertical diffusion of humidity [kg kg**-1]"}, + /* 225 */ {"HTCC", "Humidity tendency by cumulus convection [kg kg**-1]"}, + /* 226 */ {"HTLC", "Humidity tendency by large-scale condensation [kg kg**-1]"}, + /* 227 */ {"CRNH", "Change from removal of negative humidity [kg kg**-1]"}, + /* 228 */ {"TP", "Total precipitation [m]"}, + /* 229 */ {"IEWS", "Instantaneous X surface stress [N m**-2]"}, + /* 230 */ {"INSS", "Instantaneous Y surface stress [N m**-2]"}, + /* 231 */ {"ISHF", "Instantaneous surface heat flux [W m**-2]"}, + /* 232 */ {"IE", "Instantaneous moisture flux [kg m**-2 s]"}, + /* 233 */ {"ASQ", "Apparent surface humidity [kg kg**-1]"}, + /* 234 */ {"LSRH", "Logarithm of surface roughness length for heat []"}, + /* 235 */ {"SKT", "Skin temperature [K]"}, + /* 236 */ {"STL4", "Soil temperature level 4 [K]"}, + /* 237 */ {"SWL4", "Soil wetness level 4 [m]"}, + /* 238 */ {"TSN", "Temperature of snow layer [K]"}, + /* 239 */ {"CSF", "Convective snowfall [m of water equivalent]"}, + /* 240 */ {"LSF", "Large-scale snowfall [m of water equivalent]"}, + /* 241 */ {"ACF", "Accumulated cloud fraction tendency [(-1 to 1)]"}, + /* 242 */ {"ALW", "Accumulated liquid water tendency [(-1 to 1)]"}, + /* 243 */ {"FAL", "Forecast albedo [(0 - 1)]"}, + /* 244 */ {"FSR", "Forecast surface roughness [m]"}, + /* 245 */ {"FLSR", "Forecast logarithm of surface roughness for heat []"}, + /* 246 */ {"CLWC", "Cloud liquid water content [kg kg**-1]"}, + /* 247 */ {"CIWC", "Cloud ice water content [kg kg**-1]"}, + /* 248 */ {"CC", "Cloud cover [(0 - 1)]"}, + /* 249 */ {"AIW", "Accumulated ice water tendency [(-1 to 1)]"}, + /* 250 */ {"ICE", "Ice age [(0 - 1)]"}, + /* 251 */ {"ATTE", "Adiabatic tendency of temperature [K]"}, + /* 252 */ {"ATHE", "Adiabatic tendency of humidity [kg kg**-1]"}, + /* 253 */ {"ATZE", "Adiabatic tendency of zonal wind [m s**-1]"}, + /* 254 */ {"ATMW", "Adiabatic tendency of meridional wind [m s**-1]"}, + /* 255 */ {"var255", "Indicates a missing value []"}, +}; + +const struct ParmTable parm_table_ecmwf_210[256] = { + /* 0 */ {"var0", "undefined"}, + /* 1 */ {"AERMR01", "Sea Salt Aerosol (0.03 - 0.5 um) Mixing Ratio [kg kg**-1]"}, + /* 2 */ {"AERMR02", "Sea Salt Aerosol (0.5 - 5 um) Mixing Ratio [kg kg**-1]"}, + /* 3 */ {"AERMR03", "Sea Salt Aerosol (5 - 20 um) Mixing Ratio [kg kg**-1]"}, + /* 4 */ {"AERMR04", "Dust Aerosol (0.03 - 0.55 um) Mixing Ratio [kg kg**-1]"}, + /* 5 */ {"AERMR05", "Dust Aerosol (0.55 - 0.9 um) Mixing Ratio [kg kg**-1]"}, + /* 6 */ {"AERMR06", "Dust Aerosol (0.9 - 20 um) Mixing Ratio [kg kg**-1]"}, + /* 7 */ {"AERMR07", "Hydrophobic Organic Matter Aerosol Mixing Ratio [kg kg**-1]"}, + /* 8 */ {"AERMR08", "Hydrophilic Organic Matter Aerosol Mixing Ratio [kg kg**-1]"}, + /* 9 */ {"AERMR09", "Hydrophobic Black Carbon Aerosol Mixing Ratio [kg kg**-1]"}, + /* 10 */ {"AERMR10", "Hydrophilic Black Carbon Aerosol Mixing Ratio [kg kg**-1]"}, + /* 11 */ {"AERMR11", "Sulphate Aerosol Mixing Ratio [kg kg**-1]"}, + /* 12 */ {"AERMR12", "Aerosol type 12 mixing ratio [kg kg**-1]"}, + /* 13 */ {"var13", "undefined"}, + /* 14 */ {"var14", "undefined"}, + /* 15 */ {"var15", "undefined"}, + /* 16 */ {"AERGN01", "Aerosol type 1 source/gain accumulated [kg m**-2]"}, + /* 17 */ {"AERGN02", "Aerosol type 2 source/gain accumulated [kg m**-2]"}, + /* 18 */ {"AERGN03", "Aerosol type 3 source/gain accumulated [kg m**-2]"}, + /* 19 */ {"AERGN04", "Aerosol type 4 source/gain accumulated [kg m**-2]"}, + /* 20 */ {"AERGN05", "Aerosol type 5 source/gain accumulated [kg m**-2]"}, + /* 21 */ {"AERGN06", "Aerosol type 6 source/gain accumulated [kg m**-2]"}, + /* 22 */ {"AERGN07", "Aerosol type 7 source/gain accumulated [kg m**-2]"}, + /* 23 */ {"AERGN08", "Aerosol type 8 source/gain accumulated [kg m**-2]"}, + /* 24 */ {"AERGN09", "Aerosol type 9 source/gain accumulated [kg m**-2]"}, + /* 25 */ {"AERGN10", "Aerosol type 10 source/gain accumulated [kg m**-2]"}, + /* 26 */ {"AERGN11", "Aerosol type 11 source/gain accumulated [kg m**-2]"}, + /* 27 */ {"AERGN12", "Aerosol type 12 source/gain accumulated [kg m**-2]"}, + /* 28 */ {"var28", "undefined"}, + /* 29 */ {"var29", "undefined"}, + /* 30 */ {"var30", "undefined"}, + /* 31 */ {"AERLS01", "Aerosol type 1 sink/loss accumulated [kg m**-2]"}, + /* 32 */ {"AERLS02", "Aerosol type 2 sink/loss accumulated [kg m**-2]"}, + /* 33 */ {"AERLS03", "Aerosol type 3 sink/loss accumulated [kg m**-2]"}, + /* 34 */ {"AERLS04", "Aerosol type 4 sink/loss accumulated [kg m**-2]"}, + /* 35 */ {"AERLS05", "Aerosol type 5 sink/loss accumulated [kg m**-2]"}, + /* 36 */ {"AERLS06", "Aerosol type 6 sink/loss accumulated [kg m**-2]"}, + /* 37 */ {"AERLS07", "Aerosol type 7 sink/loss accumulated [kg m**-2]"}, + /* 38 */ {"AERLS08", "Aerosol type 8 sink/loss accumulated [kg m**-2]"}, + /* 39 */ {"AERLS09", "Aerosol type 9 sink/loss accumulated [kg m**-2]"}, + /* 40 */ {"AERLS10", "Aerosol type 10 sink/loss accumulated [kg m**-2]"}, + /* 41 */ {"AERLS11", "Aerosol type 11 sink/loss accumulated [kg m**-2]"}, + /* 42 */ {"AERLS12", "Aerosol type 12 sink/loss accumulated [kg m**-2]"}, + /* 43 */ {"var43", "undefined"}, + /* 44 */ {"var44", "undefined"}, + /* 45 */ {"var45", "undefined"}, + /* 46 */ {"AERPR", "Aerosol precursor mixing ratio [kg kg**-1]"}, + /* 47 */ {"AERSM", "Aerosol small mode mixing ratio [kg kg**-1]"}, + /* 48 */ {"AERLG", "Aerosol large mode mixing ratio [kg kg**-1]"}, + /* 49 */ {"AODPR", "Aerosol precursor optical depth [dimensionless]"}, + /* 50 */ {"AODSM", "Aerosol small mode optical depth [dimensionless]"}, + /* 51 */ {"AODLG", "Aerosol large mode optical depth [dimensionless]"}, + /* 52 */ {"AERDEP", "Dust emission potential [kg s**2 m**-5]"}, + /* 53 */ {"AERLTS", "Lifting threshold speed [m s**-1]"}, + /* 54 */ {"AERSCC", "Soil clay content [%]"}, + /* 55 */ {"var55", "undefined"}, + /* 56 */ {"var56", "undefined"}, + /* 57 */ {"var57", "undefined"}, + /* 58 */ {"var58", "undefined"}, + /* 59 */ {"var59", "undefined"}, + /* 60 */ {"var60", "undefined"}, + /* 61 */ {"CO2", "Carbon Dioxide [kg kg**-1]"}, + /* 62 */ {"CH4", "Methane [kg kg**-1]"}, + /* 63 */ {"N2O", "Nitrous oxide [kg kg**-1]"}, + /* 64 */ {"TCCO2", "Total column Carbon Dioxide [kg m**-2]"}, + /* 65 */ {"TCCH4", "Total column Methane [kg m**-2]"}, + /* 66 */ {"TCN2O", "Total column Nitrous oxide [kg m**-2]"}, + /* 67 */ {"CO2OF", "Ocean flux of Carbon Dioxide [kg m**-2 s**-1]"}, + /* 68 */ {"CO2NBF", "Natural biosphere flux of Carbon Dioxide [kg m**-2 s**-1]"}, + /* 69 */ {"CO2APF", "Anthropogenic emissions of Carbon Dioxide [kg m**-2 s**-1]"}, + /* 70 */ {"CH4F", "Methane Surface Fluxes [kg m**-2 s**-1]"}, + /* 71 */ {"kCH4", "Methane loss rate due to radical hydroxyl (OH) [s**-1]"}, + /* 72 */ {"var72", "undefined"}, + /* 73 */ {"var73", "undefined"}, + /* 74 */ {"var74", "undefined"}, + /* 75 */ {"var75", "undefined"}, + /* 76 */ {"var76", "undefined"}, + /* 77 */ {"var77", "undefined"}, + /* 78 */ {"var78", "undefined"}, + /* 79 */ {"var79", "undefined"}, + /* 80 */ {"CO2FIRE", "Wildfire flux of Carbon Dioxide [kg m**-2 s**-1]"}, + /* 81 */ {"COFIRE", "Wildfire flux of Carbon Monoxide [kg m**-2 s**-1]"}, + /* 82 */ {"CH4FIRE", "Wildfire flux of Methane [kg m**-2 s**-1]"}, + /* 83 */ {"NMHCFIRE", "Wildfire flux of Non-Methane Hydro-Carbons [kg m**-2 s**-1]"}, + /* 84 */ {"H2FIRE", "Wildfire flux of Hydrogen [kg m**-2 s**-1]"}, + /* 85 */ {"NOXFIRE", "Wildfire flux of Nitrogen Oxides NOx [kg m**-2 s**-1]"}, + /* 86 */ {"N2OFIRE", "Wildfire flux of Nitrous Oxide [kg m**-2 s**-1]"}, + /* 87 */ {"PM2P5FIRE", "Wildfire flux of Particulate Matter PM2.5 [kg m**-2 s**-1]"}, + /* 88 */ {"TPMFIRE", "Wildfire flux of Total Particulate Matter [kg m**-2 s**-1]"}, + /* 89 */ {"TCFIRE", "Wildfire flux of Total Carbon in Aerosols [kg m**-2 s**-1]"}, + /* 90 */ {"OCFIRE", "Wildfire flux of Organic Carbon [kg m**-2 s**-1]"}, + /* 91 */ {"BCFIRE", "Wildfire flux of Black Carbon [kg m**-2 s**-1]"}, + /* 92 */ {"CFIRE", "Wildfire overall flux of burnt Carbon [kg m**-2 s**-1]"}, + /* 93 */ {"C4FFIRE", "Wildfire fraction of C4 plants [dimensionless]"}, + /* 94 */ {"VEGFIRE", "Wildfire vegetation map index [dimensionless]"}, + /* 95 */ {"CCFIRE", "Wildfire Combustion Completeness [dimensionless]"}, + /* 96 */ {"FLFIRE", "Wildfire Fuel Load"}, + /* 97 */ {"BFFIRE", "Wildfire fraction of area burnt [dimensionless]"}, + /* 98 */ {"OAFIRE", "Wildfire observed area [m**2]"}, + /* 99 */ {"FRPFIRE", "Wildfire radiative power [W m**-2]"}, + /* 100 */ {"CRFIRE", "Wildfire combustion rate [kg m**-2 s**-1]"}, + /* 101 */ {"var101", "undefined"}, + /* 102 */ {"var102", "undefined"}, + /* 103 */ {"var103", "undefined"}, + /* 104 */ {"var104", "undefined"}, + /* 105 */ {"var105", "undefined"}, + /* 106 */ {"var106", "undefined"}, + /* 107 */ {"var107", "undefined"}, + /* 108 */ {"var108", "undefined"}, + /* 109 */ {"var109", "undefined"}, + /* 110 */ {"var110", "undefined"}, + /* 111 */ {"var111", "undefined"}, + /* 112 */ {"var112", "undefined"}, + /* 113 */ {"var113", "undefined"}, + /* 114 */ {"var114", "undefined"}, + /* 115 */ {"var115", "undefined"}, + /* 116 */ {"var116", "undefined"}, + /* 117 */ {"var117", "undefined"}, + /* 118 */ {"var118", "undefined"}, + /* 119 */ {"var119", "undefined"}, + /* 120 */ {"var120", "undefined"}, + /* 121 */ {"NO2", "Nitrogen dioxide [kg kg**-1]"}, + /* 122 */ {"SO2", "Sulphur dioxide [kg kg**-1]"}, + /* 123 */ {"CO", "Carbon monoxide [kg kg**-1]"}, + /* 124 */ {"HCHO", "Formaldehyde [kg kg**-1]"}, + /* 125 */ {"TCNO2", "Total column Nitrogen dioxide [kg m**-2]"}, + /* 126 */ {"TCSO2", "Total column Sulphur dioxide [kg m**-2]"}, + /* 127 */ {"TCCO", "Total column Carbon monoxide [kg m**-2]"}, + /* 128 */ {"TCHCHO", "Total column Formaldehyde [kg m**-2]"}, + /* 129 */ {"NOX", "Nitrogen Oxides [kg kg**-1]"}, + /* 130 */ {"TCNOX", "Total Column Nitrogen Oxides [kg m**-2]"}, + /* 131 */ {"GRG1", "Reactive tracer 1 mass mixing ratio [kg kg**-1]"}, + /* 132 */ {"TCGRG1", "Total column GRG tracer 1 [kg m**-2]"}, + /* 133 */ {"GRG2", "Reactive tracer 2 mass mixing ratio [kg kg**-1]"}, + /* 134 */ {"TCGRG2", "Total column GRG tracer 2 [kg m**-2]"}, + /* 135 */ {"GRG3", "Reactive tracer 3 mass mixing ratio [kg kg**-1]"}, + /* 136 */ {"TCGRG3", "Total column GRG tracer 3 [kg m**-2]"}, + /* 137 */ {"GRG4", "Reactive tracer 4 mass mixing ratio [kg kg**-1]"}, + /* 138 */ {"TCGRG4", "Total column GRG tracer 4 [kg m**-2]"}, + /* 139 */ {"GRG5", "Reactive tracer 5 mass mixing ratio [kg kg**-1]"}, + /* 140 */ {"TCGRG5", "Total column GRG tracer 5 [kg m**-2]"}, + /* 141 */ {"GRG6", "Reactive tracer 6 mass mixing ratio [kg kg**-1]"}, + /* 142 */ {"TCGRG6", "Total column GRG tracer 6 [kg m**-2]"}, + /* 143 */ {"GRG7", "Reactive tracer 7 mass mixing ratio [kg kg**-1]"}, + /* 144 */ {"TCGRG7", "Total column GRG tracer 7 [kg m**-2]"}, + /* 145 */ {"GRG8", "Reactive tracer 8 mass mixing ratio [kg kg**-1]"}, + /* 146 */ {"TCGRG8", "Total column GRG tracer 8 [kg m**-2]"}, + /* 147 */ {"GRG9", "Reactive tracer 9 mass mixing ratio [kg kg**-1]"}, + /* 148 */ {"TCGRG9", "Total column GRG tracer 9 [kg m**-2]"}, + /* 149 */ {"GRG10", "Reactive tracer 10 mass mixing ratio [kg kg**-1]"}, + /* 150 */ {"TCGRG10", "Total column GRG tracer 10 [kg m**-2]"}, + /* 151 */ {"SFNOX", "Surface flux Nitrogen oxides [kg m**-2 s**-1]"}, + /* 152 */ {"SFNO2", "Surface flux Nitrogen dioxide [kg m**-2 s**-1]"}, + /* 153 */ {"SFSO2", "Surface flux Sulphur dioxide [kg m**-2 s**-1]"}, + /* 154 */ {"SFCO2", "Surface flux Carbon monoxide [kg m**-2 s**-1]"}, + /* 155 */ {"SFHCHO", "Surface flux Formaldehyde [kg m**-2 s**-1]"}, + /* 156 */ {"SFGO3", "Surface flux GEMS Ozone [kg m**-2 s**-1]"}, + /* 157 */ {"SFGR1", "Surface flux reactive tracer 1 [kg m**-2 s**-1]"}, + /* 158 */ {"SFGR2", "Surface flux reactive tracer 2 [kg m**-2 s**-1]"}, + /* 159 */ {"SFGR3", "Surface flux reactive tracer 3 [kg m**-2 s**-1]"}, + /* 160 */ {"SFGR4", "Surface flux reactive tracer 4 [kg m**-2 s**-1]"}, + /* 161 */ {"SFGR5", "Surface flux reactive tracer 5 [kg m**-2 s**-1]"}, + /* 162 */ {"SFGR6", "Surface flux reactive tracer 6 [kg m**-2 s**-1]"}, + /* 163 */ {"SFGR7", "Surface flux reactive tracer 7 [kg m**-2 s**-1]"}, + /* 164 */ {"SFGR8", "Surface flux reactive tracer 8 [kg m**-2 s**-1]"}, + /* 165 */ {"SFGR9", "Surface flux reactive tracer 9 [kg m**-2 s**-1]"}, + /* 166 */ {"SFGR10", "Surface flux reactive tracer 10 [kg m**-2 s**-1]"}, + /* 167 */ {"var167", "undefined"}, + /* 168 */ {"var168", "undefined"}, + /* 169 */ {"var169", "undefined"}, + /* 170 */ {"var170", "undefined"}, + /* 171 */ {"var171", "undefined"}, + /* 172 */ {"var172", "undefined"}, + /* 173 */ {"var173", "undefined"}, + /* 174 */ {"var174", "undefined"}, + /* 175 */ {"var175", "undefined"}, + /* 176 */ {"var176", "undefined"}, + /* 177 */ {"var177", "undefined"}, + /* 178 */ {"var178", "undefined"}, + /* 179 */ {"var179", "undefined"}, + /* 180 */ {"var180", "undefined"}, + /* 181 */ {"Ra", "Radon [kg kg**-1]"}, + /* 182 */ {"SF6", "Sulphur Hexafluoride [kg kg**-1]"}, + /* 183 */ {"TCRa", "Total column Radon [kg m**-2]"}, + /* 184 */ {"TCSF6", "Total column Sulphur Hexafluoride [kg m**-2]"}, + /* 185 */ {"SF6APF", "Anthropogenic Emissions of Sulphur Hexafluoride [kg m**-2 s**-1]"}, + /* 186 */ {"var186", "undefined"}, + /* 187 */ {"var187", "undefined"}, + /* 188 */ {"var188", "undefined"}, + /* 189 */ {"var189", "undefined"}, + /* 190 */ {"var190", "undefined"}, + /* 191 */ {"var191", "undefined"}, + /* 192 */ {"var192", "undefined"}, + /* 193 */ {"var193", "undefined"}, + /* 194 */ {"var194", "undefined"}, + /* 195 */ {"var195", "undefined"}, + /* 196 */ {"var196", "undefined"}, + /* 197 */ {"var197", "undefined"}, + /* 198 */ {"var198", "undefined"}, + /* 199 */ {"var199", "undefined"}, + /* 200 */ {"var200", "undefined"}, + /* 201 */ {"var201", "undefined"}, + /* 202 */ {"var202", "undefined"}, + /* 203 */ {"GO3", "GEMS Ozone [kg kg**-1]"}, + /* 204 */ {"var204", "undefined"}, + /* 205 */ {"var205", "undefined"}, + /* 206 */ {"GTCO3", "GEMS Total column ozone [kg m**-2]"}, + /* 207 */ {"AOD550", "Total Aerosol Optical Depth at 550nm [-]"}, + /* 208 */ {"SSAOD550", "Sea Salt Aerosol Optical Depth at 550nm [-]"}, + /* 209 */ {"DUAOD550", "Dust Aerosol Optical Depth at 550nm [-]"}, + /* 210 */ {"OMAOD550", "Organic Matter Aerosol Optical Depth at 550nm [-]"}, + /* 211 */ {"BCAOD550", "Black Carbon Aerosol Optical Depth at 550nm [-]"}, + /* 212 */ {"SUAOD550", "Sulphate Aerosol Optical Depth at 550nm [-]"}, + /* 213 */ {"AOD469", "Total Aerosol Optical Depth at 469nm [-]"}, + /* 214 */ {"AOD670", "Total Aerosol Optical Depth at 670nm [-]"}, + /* 215 */ {"AOD865", "Total Aerosol Optical Depth at 865nm [-]"}, + /* 216 */ {"AOD1240", "Total Aerosol Optical Depth at 1240nm [-]"}, + /* 217 */ {"var217", "undefined"}, + /* 218 */ {"var218", "undefined"}, + /* 219 */ {"var219", "undefined"}, + /* 220 */ {"var220", "undefined"}, + /* 221 */ {"var221", "undefined"}, + /* 222 */ {"var222", "undefined"}, + /* 223 */ {"var223", "undefined"}, + /* 224 */ {"var224", "undefined"}, + /* 225 */ {"var225", "undefined"}, + /* 226 */ {"var226", "undefined"}, + /* 227 */ {"var227", "undefined"}, + /* 228 */ {"var228", "undefined"}, + /* 229 */ {"var229", "undefined"}, + /* 230 */ {"var230", "undefined"}, + /* 231 */ {"var231", "undefined"}, + /* 232 */ {"var232", "undefined"}, + /* 233 */ {"var233", "undefined"}, + /* 234 */ {"var234", "undefined"}, + /* 235 */ {"var235", "undefined"}, + /* 236 */ {"var236", "undefined"}, + /* 237 */ {"var237", "undefined"}, + /* 238 */ {"var238", "undefined"}, + /* 239 */ {"var239", "undefined"}, + /* 240 */ {"var240", "undefined"}, + /* 241 */ {"var241", "undefined"}, + /* 242 */ {"var242", "undefined"}, + /* 243 */ {"var243", "undefined"}, + /* 244 */ {"var244", "undefined"}, + /* 245 */ {"var245", "undefined"}, + /* 246 */ {"var246", "undefined"}, + /* 247 */ {"var247", "undefined"}, + /* 248 */ {"var248", "undefined"}, + /* 249 */ {"var249", "undefined"}, + /* 250 */ {"var250", "undefined"}, + /* 251 */ {"var251", "undefined"}, + /* 252 */ {"var252", "undefined"}, + /* 253 */ {"var253", "undefined"}, + /* 254 */ {"var254", "undefined"}, + /* 255 */ {"var255", "undefined"}, +}; + +const struct ParmTable parm_table_ecmwf_211[256] = { + /* 0 */ {"var0", "undefined"}, + /* 1 */ {"var1", "undefined"}, + /* 2 */ {"var2", "undefined"}, + /* 3 */ {"var3", "undefined"}, + /* 4 */ {"var4", "undefined"}, + /* 5 */ {"var5", "undefined"}, + /* 6 */ {"var6", "undefined"}, + /* 7 */ {"var7", "undefined"}, + /* 8 */ {"var8", "undefined"}, + /* 9 */ {"var9", "undefined"}, + /* 10 */ {"var10", "undefined"}, + /* 11 */ {"var11", "undefined"}, + /* 12 */ {"var12", "undefined"}, + /* 13 */ {"var13", "undefined"}, + /* 14 */ {"var14", "undefined"}, + /* 15 */ {"var15", "undefined"}, + /* 16 */ {"var16", "undefined"}, + /* 17 */ {"var17", "undefined"}, + /* 18 */ {"var18", "undefined"}, + /* 19 */ {"var19", "undefined"}, + /* 20 */ {"var20", "undefined"}, + /* 21 */ {"var21", "undefined"}, + /* 22 */ {"var22", "undefined"}, + /* 23 */ {"var23", "undefined"}, + /* 24 */ {"var24", "undefined"}, + /* 25 */ {"var25", "undefined"}, + /* 26 */ {"var26", "undefined"}, + /* 27 */ {"var27", "undefined"}, + /* 28 */ {"var28", "undefined"}, + /* 29 */ {"var29", "undefined"}, + /* 30 */ {"var30", "undefined"}, + /* 31 */ {"var31", "undefined"}, + /* 32 */ {"var32", "undefined"}, + /* 33 */ {"var33", "undefined"}, + /* 34 */ {"var34", "undefined"}, + /* 35 */ {"var35", "undefined"}, + /* 36 */ {"var36", "undefined"}, + /* 37 */ {"var37", "undefined"}, + /* 38 */ {"var38", "undefined"}, + /* 39 */ {"var39", "undefined"}, + /* 40 */ {"var40", "undefined"}, + /* 41 */ {"var41", "undefined"}, + /* 42 */ {"var42", "undefined"}, + /* 43 */ {"var43", "undefined"}, + /* 44 */ {"var44", "undefined"}, + /* 45 */ {"var45", "undefined"}, + /* 46 */ {"AERPR", "Aerosol precursor mixing ratio [kg kg**-1]"}, + /* 47 */ {"AERSM", "Aerosol small mode mixing ratio [kg kg**-1]"}, + /* 48 */ {"AERLG", "Aerosol large mode mixing ratio [kg kg**-1]"}, + /* 49 */ {"AODPR", "Aerosol precursor optical depth [dimensionless]"}, + /* 50 */ {"AODSM", "Aerosol small mode optical depth [dimensionless]"}, + /* 51 */ {"AODLG", "Aerosol large mode optical depth [dimensionless]"}, + /* 52 */ {"var52", "undefined"}, + /* 53 */ {"var53", "undefined"}, + /* 54 */ {"var54", "undefined"}, + /* 55 */ {"var55", "undefined"}, + /* 56 */ {"var56", "undefined"}, + /* 57 */ {"var57", "undefined"}, + /* 58 */ {"var58", "undefined"}, + /* 59 */ {"var59", "undefined"}, + /* 60 */ {"var60", "undefined"}, + /* 61 */ {"CO2", "Carbon Dioxide [kg kg**-1]"}, + /* 62 */ {"CH4", "Methane [kg kg**-1]"}, + /* 63 */ {"N2O", "Nitrous oxide [kg kg**-1]"}, + /* 64 */ {"var64", "undefined"}, + /* 65 */ {"var65", "undefined"}, + /* 66 */ {"var66", "undefined"}, + /* 67 */ {"var67", "undefined"}, + /* 68 */ {"var68", "undefined"}, + /* 69 */ {"var69", "undefined"}, + /* 70 */ {"var70", "undefined"}, + /* 71 */ {"var71", "undefined"}, + /* 72 */ {"var72", "undefined"}, + /* 73 */ {"var73", "undefined"}, + /* 74 */ {"var74", "undefined"}, + /* 75 */ {"var75", "undefined"}, + /* 76 */ {"var76", "undefined"}, + /* 77 */ {"var77", "undefined"}, + /* 78 */ {"var78", "undefined"}, + /* 79 */ {"var79", "undefined"}, + /* 80 */ {"var80", "undefined"}, + /* 81 */ {"var81", "undefined"}, + /* 82 */ {"var82", "undefined"}, + /* 83 */ {"var83", "undefined"}, + /* 84 */ {"var84", "undefined"}, + /* 85 */ {"var85", "undefined"}, + /* 86 */ {"var86", "undefined"}, + /* 87 */ {"var87", "undefined"}, + /* 88 */ {"var88", "undefined"}, + /* 89 */ {"var89", "undefined"}, + /* 90 */ {"var90", "undefined"}, + /* 91 */ {"var91", "undefined"}, + /* 92 */ {"var92", "undefined"}, + /* 93 */ {"var93", "undefined"}, + /* 94 */ {"var94", "undefined"}, + /* 95 */ {"var95", "undefined"}, + /* 96 */ {"var96", "undefined"}, + /* 97 */ {"var97", "undefined"}, + /* 98 */ {"var98", "undefined"}, + /* 99 */ {"var99", "undefined"}, + /* 100 */ {"var100", "undefined"}, + /* 101 */ {"var101", "undefined"}, + /* 102 */ {"var102", "undefined"}, + /* 103 */ {"var103", "undefined"}, + /* 104 */ {"var104", "undefined"}, + /* 105 */ {"var105", "undefined"}, + /* 106 */ {"var106", "undefined"}, + /* 107 */ {"var107", "undefined"}, + /* 108 */ {"var108", "undefined"}, + /* 109 */ {"var109", "undefined"}, + /* 110 */ {"var110", "undefined"}, + /* 111 */ {"var111", "undefined"}, + /* 112 */ {"var112", "undefined"}, + /* 113 */ {"var113", "undefined"}, + /* 114 */ {"var114", "undefined"}, + /* 115 */ {"var115", "undefined"}, + /* 116 */ {"var116", "undefined"}, + /* 117 */ {"var117", "undefined"}, + /* 118 */ {"var118", "undefined"}, + /* 119 */ {"var119", "undefined"}, + /* 120 */ {"var120", "undefined"}, + /* 121 */ {"NO2", "Nitrogen dioxide [kg kg**-1]"}, + /* 122 */ {"SO2", "Sulphur dioxide [kg kg**-1]"}, + /* 123 */ {"CO", "Carbon monoxide [kg kg**-1]"}, + /* 124 */ {"HCHO", "Formaldehyde [kg kg**-1]"}, + /* 125 */ {"var125", "undefined"}, + /* 126 */ {"var126", "undefined"}, + /* 127 */ {"var127", "undefined"}, + /* 128 */ {"var128", "undefined"}, + /* 129 */ {"var129", "undefined"}, + /* 130 */ {"var130", "undefined"}, + /* 131 */ {"var131", "undefined"}, + /* 132 */ {"var132", "undefined"}, + /* 133 */ {"var133", "undefined"}, + /* 134 */ {"var134", "undefined"}, + /* 135 */ {"var135", "undefined"}, + /* 136 */ {"var136", "undefined"}, + /* 137 */ {"var137", "undefined"}, + /* 138 */ {"var138", "undefined"}, + /* 139 */ {"var139", "undefined"}, + /* 140 */ {"var140", "undefined"}, + /* 141 */ {"var141", "undefined"}, + /* 142 */ {"var142", "undefined"}, + /* 143 */ {"var143", "undefined"}, + /* 144 */ {"var144", "undefined"}, + /* 145 */ {"var145", "undefined"}, + /* 146 */ {"var146", "undefined"}, + /* 147 */ {"var147", "undefined"}, + /* 148 */ {"var148", "undefined"}, + /* 149 */ {"var149", "undefined"}, + /* 150 */ {"var150", "undefined"}, + /* 151 */ {"var151", "undefined"}, + /* 152 */ {"var152", "undefined"}, + /* 153 */ {"var153", "undefined"}, + /* 154 */ {"var154", "undefined"}, + /* 155 */ {"var155", "undefined"}, + /* 156 */ {"var156", "undefined"}, + /* 157 */ {"var157", "undefined"}, + /* 158 */ {"var158", "undefined"}, + /* 159 */ {"var159", "undefined"}, + /* 160 */ {"var160", "undefined"}, + /* 161 */ {"var161", "undefined"}, + /* 162 */ {"var162", "undefined"}, + /* 163 */ {"var163", "undefined"}, + /* 164 */ {"var164", "undefined"}, + /* 165 */ {"var165", "undefined"}, + /* 166 */ {"var166", "undefined"}, + /* 167 */ {"var167", "undefined"}, + /* 168 */ {"var168", "undefined"}, + /* 169 */ {"var169", "undefined"}, + /* 170 */ {"var170", "undefined"}, + /* 171 */ {"var171", "undefined"}, + /* 172 */ {"var172", "undefined"}, + /* 173 */ {"var173", "undefined"}, + /* 174 */ {"var174", "undefined"}, + /* 175 */ {"var175", "undefined"}, + /* 176 */ {"var176", "undefined"}, + /* 177 */ {"var177", "undefined"}, + /* 178 */ {"var178", "undefined"}, + /* 179 */ {"var179", "undefined"}, + /* 180 */ {"var180", "undefined"}, + /* 181 */ {"var181", "undefined"}, + /* 182 */ {"var182", "undefined"}, + /* 183 */ {"var183", "undefined"}, + /* 184 */ {"var184", "undefined"}, + /* 185 */ {"var185", "undefined"}, + /* 186 */ {"var186", "undefined"}, + /* 187 */ {"var187", "undefined"}, + /* 188 */ {"var188", "undefined"}, + /* 189 */ {"var189", "undefined"}, + /* 190 */ {"var190", "undefined"}, + /* 191 */ {"var191", "undefined"}, + /* 192 */ {"var192", "undefined"}, + /* 193 */ {"var193", "undefined"}, + /* 194 */ {"var194", "undefined"}, + /* 195 */ {"var195", "undefined"}, + /* 196 */ {"var196", "undefined"}, + /* 197 */ {"var197", "undefined"}, + /* 198 */ {"var198", "undefined"}, + /* 199 */ {"var199", "undefined"}, + /* 200 */ {"var200", "undefined"}, + /* 201 */ {"var201", "undefined"}, + /* 202 */ {"var202", "undefined"}, + /* 203 */ {"GO3", "GEMS Ozone [kg kg**-1]"}, + /* 204 */ {"var204", "undefined"}, + /* 205 */ {"var205", "undefined"}, + /* 206 */ {"var206", "undefined"}, + /* 207 */ {"var207", "undefined"}, + /* 208 */ {"var208", "undefined"}, + /* 209 */ {"var209", "undefined"}, + /* 210 */ {"var210", "undefined"}, + /* 211 */ {"var211", "undefined"}, + /* 212 */ {"var212", "undefined"}, + /* 213 */ {"var213", "undefined"}, + /* 214 */ {"var214", "undefined"}, + /* 215 */ {"var215", "undefined"}, + /* 216 */ {"var216", "undefined"}, + /* 217 */ {"var217", "undefined"}, + /* 218 */ {"var218", "undefined"}, + /* 219 */ {"var219", "undefined"}, + /* 220 */ {"var220", "undefined"}, + /* 221 */ {"var221", "undefined"}, + /* 222 */ {"var222", "undefined"}, + /* 223 */ {"var223", "undefined"}, + /* 224 */ {"var224", "undefined"}, + /* 225 */ {"var225", "undefined"}, + /* 226 */ {"var226", "undefined"}, + /* 227 */ {"var227", "undefined"}, + /* 228 */ {"var228", "undefined"}, + /* 229 */ {"var229", "undefined"}, + /* 230 */ {"var230", "undefined"}, + /* 231 */ {"var231", "undefined"}, + /* 232 */ {"var232", "undefined"}, + /* 233 */ {"var233", "undefined"}, + /* 234 */ {"var234", "undefined"}, + /* 235 */ {"var235", "undefined"}, + /* 236 */ {"var236", "undefined"}, + /* 237 */ {"var237", "undefined"}, + /* 238 */ {"var238", "undefined"}, + /* 239 */ {"var239", "undefined"}, + /* 240 */ {"var240", "undefined"}, + /* 241 */ {"var241", "undefined"}, + /* 242 */ {"var242", "undefined"}, + /* 243 */ {"var243", "undefined"}, + /* 244 */ {"var244", "undefined"}, + /* 245 */ {"var245", "undefined"}, + /* 246 */ {"var246", "undefined"}, + /* 247 */ {"var247", "undefined"}, + /* 248 */ {"var248", "undefined"}, + /* 249 */ {"var249", "undefined"}, + /* 250 */ {"var250", "undefined"}, + /* 251 */ {"var251", "undefined"}, + /* 252 */ {"var252", "undefined"}, + /* 253 */ {"var253", "undefined"}, + /* 254 */ {"var254", "undefined"}, + /* 255 */ {"var255", "undefined"}, +}; + +const struct ParmTable parm_table_ecmwf_228[256] = { + /* 0 */ {"var0", "undefined"}, + /* 1 */ {"CIN", "Convective inhibition [J kg**-1]"}, + /* 2 */ {"OROG", "Orography [m]"}, + /* 3 */ {"ZUST", "Friction velocity [m s**-1]"}, + /* 4 */ {"MEAN2T", "Mean temperature at 2 metres [K]"}, + /* 5 */ {"MEAN10WS", "Mean of 10 metre wind speed [m s**-1]"}, + /* 6 */ {"MEANTCC", "Mean total cloud cover [(0 - 1)]"}, + /* 7 */ {"DL", "Lake depth [m]"}, + /* 8 */ {"LMLT", "Lake mix-layer temperature [K]"}, + /* 9 */ {"LMLD", "Lake mix-layer depth [m]"}, + /* 10 */ {"LBLT", "Lake bottom temperature [K]"}, + /* 11 */ {"LTLT", "Lake total layer temperature [K]"}, + /* 12 */ {"LSHF", "Lake shape factor [dimensionless]"}, + /* 13 */ {"LICT", "Lake ice temperature [K]"}, + /* 14 */ {"LICD", "Lake ice depth [m]"}, + /* 15 */ {"DNDZN", "Minimum vertical gradient of refractivity inside trapping layer [m**-1]"}, + /* 16 */ {"DNDZA", "Mean vertical gradient of refractivity inside trapping layer [m**-1]"}, + /* 17 */ {"DCTB", "Duct base height [m]"}, + /* 18 */ {"TPLB", "Trapping layer base height [m]"}, + /* 19 */ {"TPLT", "Trapping layer top height [m]"}, + /* 20 */ {"var20", "undefined"}, + /* 21 */ {"var21", "undefined"}, + /* 22 */ {"var22", "undefined"}, + /* 23 */ {"var23", "undefined"}, + /* 24 */ {"var24", "undefined"}, + /* 25 */ {"var25", "undefined"}, + /* 26 */ {"var26", "undefined"}, + /* 27 */ {"var27", "undefined"}, + /* 28 */ {"var28", "undefined"}, + /* 29 */ {"var29", "undefined"}, + /* 30 */ {"var30", "undefined"}, + /* 31 */ {"var31", "undefined"}, + /* 32 */ {"var32", "undefined"}, + /* 33 */ {"var33", "undefined"}, + /* 34 */ {"var34", "undefined"}, + /* 35 */ {"var35", "undefined"}, + /* 36 */ {"var36", "undefined"}, + /* 37 */ {"var37", "undefined"}, + /* 38 */ {"var38", "undefined"}, + /* 39 */ {"SM", "Soil Moisture [kg m**-3]"}, + /* 40 */ {"var40", "undefined"}, + /* 41 */ {"var41", "undefined"}, + /* 42 */ {"var42", "undefined"}, + /* 43 */ {"var43", "undefined"}, + /* 44 */ {"var44", "undefined"}, + /* 45 */ {"var45", "undefined"}, + /* 46 */ {"var46", "undefined"}, + /* 47 */ {"var47", "undefined"}, + /* 48 */ {"var48", "undefined"}, + /* 49 */ {"var49", "undefined"}, + /* 50 */ {"var50", "undefined"}, + /* 51 */ {"var51", "undefined"}, + /* 52 */ {"var52", "undefined"}, + /* 53 */ {"var53", "undefined"}, + /* 54 */ {"var54", "undefined"}, + /* 55 */ {"var55", "undefined"}, + /* 56 */ {"var56", "undefined"}, + /* 57 */ {"var57", "undefined"}, + /* 58 */ {"var58", "undefined"}, + /* 59 */ {"var59", "undefined"}, + /* 60 */ {"var60", "undefined"}, + /* 61 */ {"var61", "undefined"}, + /* 62 */ {"var62", "undefined"}, + /* 63 */ {"var63", "undefined"}, + /* 64 */ {"var64", "undefined"}, + /* 65 */ {"var65", "undefined"}, + /* 66 */ {"var66", "undefined"}, + /* 67 */ {"var67", "undefined"}, + /* 68 */ {"var68", "undefined"}, + /* 69 */ {"var69", "undefined"}, + /* 70 */ {"var70", "undefined"}, + /* 71 */ {"var71", "undefined"}, + /* 72 */ {"var72", "undefined"}, + /* 73 */ {"var73", "undefined"}, + /* 74 */ {"var74", "undefined"}, + /* 75 */ {"var75", "undefined"}, + /* 76 */ {"var76", "undefined"}, + /* 77 */ {"var77", "undefined"}, + /* 78 */ {"var78", "undefined"}, + /* 79 */ {"var79", "undefined"}, + /* 80 */ {"var80", "undefined"}, + /* 81 */ {"var81", "undefined"}, + /* 82 */ {"var82", "undefined"}, + /* 83 */ {"var83", "undefined"}, + /* 84 */ {"var84", "undefined"}, + /* 85 */ {"var85", "undefined"}, + /* 86 */ {"var86", "undefined"}, + /* 87 */ {"var87", "undefined"}, + /* 88 */ {"var88", "undefined"}, + /* 89 */ {"var89", "undefined"}, + /* 90 */ {"var90", "undefined"}, + /* 91 */ {"var91", "undefined"}, + /* 92 */ {"var92", "undefined"}, + /* 93 */ {"var93", "undefined"}, + /* 94 */ {"var94", "undefined"}, + /* 95 */ {"var95", "undefined"}, + /* 96 */ {"var96", "undefined"}, + /* 97 */ {"var97", "undefined"}, + /* 98 */ {"var98", "undefined"}, + /* 99 */ {"var99", "undefined"}, + /* 100 */ {"var100", "undefined"}, + /* 101 */ {"var101", "undefined"}, + /* 102 */ {"var102", "undefined"}, + /* 103 */ {"var103", "undefined"}, + /* 104 */ {"var104", "undefined"}, + /* 105 */ {"var105", "undefined"}, + /* 106 */ {"var106", "undefined"}, + /* 107 */ {"var107", "undefined"}, + /* 108 */ {"var108", "undefined"}, + /* 109 */ {"var109", "undefined"}, + /* 110 */ {"var110", "undefined"}, + /* 111 */ {"var111", "undefined"}, + /* 112 */ {"var112", "undefined"}, + /* 113 */ {"var113", "undefined"}, + /* 114 */ {"var114", "undefined"}, + /* 115 */ {"var115", "undefined"}, + /* 116 */ {"var116", "undefined"}, + /* 117 */ {"var117", "undefined"}, + /* 118 */ {"var118", "undefined"}, + /* 119 */ {"var119", "undefined"}, + /* 120 */ {"var120", "undefined"}, + /* 121 */ {"var121", "undefined"}, + /* 122 */ {"var122", "undefined"}, + /* 123 */ {"var123", "undefined"}, + /* 124 */ {"var124", "undefined"}, + /* 125 */ {"var125", "undefined"}, + /* 126 */ {"var126", "undefined"}, + /* 127 */ {"var127", "undefined"}, + /* 128 */ {"var128", "undefined"}, + /* 129 */ {"var129", "undefined"}, + /* 130 */ {"var130", "undefined"}, + /* 131 */ {"U10N", "Neutral wind at 10 m x-component [m s**-1]"}, + /* 132 */ {"V10N", "Neutral wind at 10 m y-component [m s**-1]"}, + /* 133 */ {"var133", "undefined"}, + /* 134 */ {"VTNOWD", "V-tendency from non-orographic wave drag [m s**-2]"}, + /* 135 */ {"var135", "undefined"}, + /* 136 */ {"UTNOWD", "U-tendency from non-orographic wave drag [m s**-2]"}, + /* 137 */ {"var137", "undefined"}, + /* 138 */ {"var138", "undefined"}, + /* 139 */ {"ST", "Soil Temperature [K]"}, + /* 140 */ {"var140", "undefined"}, + /* 141 */ {"SD", "Snow Depth water equivalent [m]"}, + /* 142 */ {"var142", "undefined"}, + /* 143 */ {"var143", "undefined"}, + /* 144 */ {"SF", "Snow Fall water equivalent [kg m**-2]"}, + /* 145 */ {"var145", "undefined"}, + /* 146 */ {"var146", "undefined"}, + /* 147 */ {"var147", "undefined"}, + /* 148 */ {"var148", "undefined"}, + /* 149 */ {"var149", "undefined"}, + /* 150 */ {"var150", "undefined"}, + /* 151 */ {"var151", "undefined"}, + /* 152 */ {"var152", "undefined"}, + /* 153 */ {"var153", "undefined"}, + /* 154 */ {"var154", "undefined"}, + /* 155 */ {"var155", "undefined"}, + /* 156 */ {"var156", "undefined"}, + /* 157 */ {"var157", "undefined"}, + /* 158 */ {"var158", "undefined"}, + /* 159 */ {"var159", "undefined"}, + /* 160 */ {"var160", "undefined"}, + /* 161 */ {"var161", "undefined"}, + /* 162 */ {"var162", "undefined"}, + /* 163 */ {"var163", "undefined"}, + /* 164 */ {"TCC", "Total Cloud Cover [%]"}, + /* 165 */ {"var165", "undefined"}, + /* 166 */ {"var166", "undefined"}, + /* 167 */ {"var167", "undefined"}, + /* 168 */ {"var168", "undefined"}, + /* 169 */ {"var169", "undefined"}, + /* 170 */ {"CAP", "Field capacity [kg m**-3]"}, + /* 171 */ {"WILT", "Wilting point [kg m**-3]"}, + /* 172 */ {"var172", "undefined"}, + /* 173 */ {"var173", "undefined"}, + /* 174 */ {"var174", "undefined"}, + /* 175 */ {"var175", "undefined"}, + /* 176 */ {"var176", "undefined"}, + /* 177 */ {"var177", "undefined"}, + /* 178 */ {"var178", "undefined"}, + /* 179 */ {"var179", "undefined"}, + /* 180 */ {"var180", "undefined"}, + /* 181 */ {"var181", "undefined"}, + /* 182 */ {"var182", "undefined"}, + /* 183 */ {"var183", "undefined"}, + /* 184 */ {"var184", "undefined"}, + /* 185 */ {"var185", "undefined"}, + /* 186 */ {"var186", "undefined"}, + /* 187 */ {"var187", "undefined"}, + /* 188 */ {"var188", "undefined"}, + /* 189 */ {"var189", "undefined"}, + /* 190 */ {"var190", "undefined"}, + /* 191 */ {"var191", "undefined"}, + /* 192 */ {"var192", "undefined"}, + /* 193 */ {"var193", "undefined"}, + /* 194 */ {"var194", "undefined"}, + /* 195 */ {"var195", "undefined"}, + /* 196 */ {"var196", "undefined"}, + /* 197 */ {"var197", "undefined"}, + /* 198 */ {"var198", "undefined"}, + /* 199 */ {"var199", "undefined"}, + /* 200 */ {"var200", "undefined"}, + /* 201 */ {"var201", "undefined"}, + /* 202 */ {"var202", "undefined"}, + /* 203 */ {"var203", "undefined"}, + /* 204 */ {"var204", "undefined"}, + /* 205 */ {"var205", "undefined"}, + /* 206 */ {"var206", "undefined"}, + /* 207 */ {"var207", "undefined"}, + /* 208 */ {"var208", "undefined"}, + /* 209 */ {"var209", "undefined"}, + /* 210 */ {"var210", "undefined"}, + /* 211 */ {"var211", "undefined"}, + /* 212 */ {"var212", "undefined"}, + /* 213 */ {"var213", "undefined"}, + /* 214 */ {"var214", "undefined"}, + /* 215 */ {"var215", "undefined"}, + /* 216 */ {"var216", "undefined"}, + /* 217 */ {"var217", "undefined"}, + /* 218 */ {"var218", "undefined"}, + /* 219 */ {"var219", "undefined"}, + /* 220 */ {"var220", "undefined"}, + /* 221 */ {"var221", "undefined"}, + /* 222 */ {"var222", "undefined"}, + /* 223 */ {"var223", "undefined"}, + /* 224 */ {"var224", "undefined"}, + /* 225 */ {"var225", "undefined"}, + /* 226 */ {"var226", "undefined"}, + /* 227 */ {"var227", "undefined"}, + /* 228 */ {"TP", "Total Precipitation [kg m**-2]"}, + /* 229 */ {"var229", "undefined"}, + /* 230 */ {"var230", "undefined"}, + /* 231 */ {"var231", "undefined"}, + /* 232 */ {"var232", "undefined"}, + /* 233 */ {"var233", "undefined"}, + /* 234 */ {"var234", "undefined"}, + /* 235 */ {"var235", "undefined"}, + /* 236 */ {"var236", "undefined"}, + /* 237 */ {"var237", "undefined"}, + /* 238 */ {"var238", "undefined"}, + /* 239 */ {"var239", "undefined"}, + /* 240 */ {"var240", "undefined"}, + /* 241 */ {"var241", "undefined"}, + /* 242 */ {"var242", "undefined"}, + /* 243 */ {"var243", "undefined"}, + /* 244 */ {"var244", "undefined"}, + /* 245 */ {"var245", "undefined"}, + /* 246 */ {"var246", "undefined"}, + /* 247 */ {"var247", "undefined"}, + /* 248 */ {"var248", "undefined"}, + /* 249 */ {"var249", "undefined"}, + /* 250 */ {"var250", "undefined"}, + /* 251 */ {"var251", "undefined"}, + /* 252 */ {"var252", "undefined"}, + /* 253 */ {"var253", "undefined"}, + /* 254 */ {"var254", "undefined"}, + /* 255 */ {"var255", "undefined"}, +}; + +const struct ParmTable parm_table_nceptab_129[256] = { + /* 0 */ {"var0", "undefined"}, + /* 1 */ {"PRES", "Pressure [Pa]"}, + /* 2 */ {"PRMSL", "Pressure reduced to MSL [Pa]"}, + /* 3 */ {"PTEND", "Pressure tendency [Pa/s]"}, + /* 4 */ {"PVORT", "Pot. vorticity [km^2/kg/s]"}, + /* 5 */ {"ICAHT", "ICAO Standard Atmosphere Reference Height [M]"}, + /* 6 */ {"GP", "Geopotential [m^2/s^2]"}, + /* 7 */ {"HGT", "Geopotential height [gpm]"}, + /* 8 */ {"DIST", "Geometric height [m]"}, + /* 9 */ {"HSTDV", "Std dev of height [m]"}, + /* 10 */ {"TOZNE", "Total ozone [Dobson]"}, + /* 11 */ {"TMP", "Temp. [K]"}, + /* 12 */ {"VTMP", "Virtual temp. [K]"}, + /* 13 */ {"POT", "Potential temp. [K]"}, + /* 14 */ {"EPOT", "Pseudo-adiabatic pot. temp. [K]"}, + /* 15 */ {"TMAX", "Max. temp. [K]"}, + /* 16 */ {"TMIN", "Min. temp. [K]"}, + /* 17 */ {"DPT", "Dew point temp. [K]"}, + /* 18 */ {"DEPR", "Dew point depression [K]"}, + /* 19 */ {"LAPR", "Lapse rate [K/m]"}, + /* 20 */ {"VIS", "Visibility [m]"}, + /* 21 */ {"RDSP1", "Radar spectra (1) [non-dim]"}, + /* 22 */ {"RDSP2", "Radar spectra (2) [non-dim]"}, + /* 23 */ {"RDSP3", "Radar spectra (3) [non-dim]"}, + /* 24 */ {"PLI", "Parcel lifted index (to 500 hPa) [K]"}, + /* 25 */ {"TMPA", "Temp. anomaly [K]"}, + /* 26 */ {"PRESA", "Pressure anomaly [Pa]"}, + /* 27 */ {"GPA", "Geopotential height anomaly [gpm]"}, + /* 28 */ {"WVSP1", "Wave spectra (1) [non-dim]"}, + /* 29 */ {"WVSP2", "Wave spectra (2) [non-dim]"}, + /* 30 */ {"WVSP3", "Wave spectra (3) [non-dim]"}, + /* 31 */ {"WDIR", "Wind direction [deg]"}, + /* 32 */ {"WIND", "Wind speed [m/s]"}, + /* 33 */ {"UGRD", "u wind [m/s]"}, + /* 34 */ {"VGRD", "v wind [m/s]"}, + /* 35 */ {"STRM", "Stream function [m^2/s]"}, + /* 36 */ {"VPOT", "Velocity potential [m^2/s]"}, + /* 37 */ {"MNTSF", "Montgomery stream function [m^2/s^2]"}, + /* 38 */ {"SGCVV", "Sigma coord. vertical velocity [/s]"}, + /* 39 */ {"VVEL", "Pressure vertical velocity [Pa/s]"}, + /* 40 */ {"DZDT", "Geometric vertical velocity [m/s]"}, + /* 41 */ {"ABSV", "Absolute vorticity [/s]"}, + /* 42 */ {"ABSD", "Absolute divergence [/s]"}, + /* 43 */ {"RELV", "Relative vorticity [/s]"}, + /* 44 */ {"RELD", "Relative divergence [/s]"}, + /* 45 */ {"VUCSH", "Vertical u shear [/s]"}, + /* 46 */ {"VVCSH", "Vertical v shear [/s]"}, + /* 47 */ {"DIRC", "Direction of current [deg]"}, + /* 48 */ {"SPC", "Speed of current [m/s]"}, + /* 49 */ {"UOGRD", "u of current [m/s]"}, + /* 50 */ {"VOGRD", "v of current [m/s]"}, + /* 51 */ {"SPFH", "Specific humidity [kg/kg]"}, + /* 52 */ {"RH", "Relative humidity [%]"}, + /* 53 */ {"MIXR", "Humidity mixing ratio [kg/kg]"}, + /* 54 */ {"PWAT", "Precipitable water [kg/m^2]"}, + /* 55 */ {"VAPP", "Vapor pressure [Pa]"}, + /* 56 */ {"SATD", "Saturation deficit [Pa]"}, + /* 57 */ {"EVP", "Evaporation [kg/m^2]"}, + /* 58 */ {"CICE", "Cloud Ice [kg/m^2]"}, + /* 59 */ {"PRATE", "Precipitation rate [kg/m^2/s]"}, + /* 60 */ {"TSTM", "Thunderstorm probability [%]"}, + /* 61 */ {"APCP", "Total precipitation [kg/m^2]"}, + /* 62 */ {"NCPCP", "Large scale precipitation [kg/m^2]"}, + /* 63 */ {"ACPCP", "Convective precipitation [kg/m^2]"}, + /* 64 */ {"SRWEQ", "Snowfall rate water equiv. [kg/m^2/s]"}, + /* 65 */ {"WEASD", "Accum. snow [kg/m^2]"}, + /* 66 */ {"SNOD", "Snow depth [m]"}, + /* 67 */ {"MIXHT", "Mixed layer depth [m]"}, + /* 68 */ {"TTHDP", "Transient thermocline depth [m]"}, + /* 69 */ {"MTHD", "Main thermocline depth [m]"}, + /* 70 */ {"MTHA", "Main thermocline anomaly [m]"}, + /* 71 */ {"TCDC", "Total cloud cover [%]"}, + /* 72 */ {"CDCON", "Convective cloud cover [%]"}, + /* 73 */ {"LCDC", "Low level cloud cover [%]"}, + /* 74 */ {"MCDC", "Mid level cloud cover [%]"}, + /* 75 */ {"HCDC", "High level cloud cover [%]"}, + /* 76 */ {"CWAT", "Cloud water [kg/m^2]"}, + /* 77 */ {"BLI", "Best lifted index (to 500 hPa) [K]"}, + /* 78 */ {"SNOC", "Convective snow [kg/m^2]"}, + /* 79 */ {"SNOL", "Large scale snow [kg/m^2]"}, + /* 80 */ {"WTMP", "Water temp. [K]"}, + /* 81 */ {"LAND", "Land cover (land=1;sea=0) [fraction]"}, + /* 82 */ {"DSLM", "Deviation of sea level from mean [m]"}, + /* 83 */ {"SFCR", "Surface roughness [m]"}, + /* 84 */ {"ALBDO", "Albedo [%]"}, + /* 85 */ {"TSOIL", "Soil temp. [K]"}, + /* 86 */ {"SOILM", "Soil moisture content [kg/m^2]"}, + /* 87 */ {"VEG", "Vegetation [%]"}, + /* 88 */ {"SALTY", "Salinity [kg/kg]"}, + /* 89 */ {"DEN", "Density [kg/m^3]"}, + /* 90 */ {"WATR", "Water runoff [kg/m^2]"}, + /* 91 */ {"ICEC", "Ice concentration (ice=1;no ice=0) [fraction]"}, + /* 92 */ {"ICETK", "Ice thickness [m]"}, + /* 93 */ {"DICED", "Direction of ice drift [deg]"}, + /* 94 */ {"SICED", "Speed of ice drift [m/s]"}, + /* 95 */ {"UICE", "u of ice drift [m/s]"}, + /* 96 */ {"VICE", "v of ice drift [m/s]"}, + /* 97 */ {"ICEG", "Ice growth rate [m/s]"}, + /* 98 */ {"ICED", "Ice divergence [/s]"}, + /* 99 */ {"SNOM", "Snow melt [kg/m^2]"}, + /* 100 */ {"HTSGW", "Sig height of wind waves and swell [m]"}, + /* 101 */ {"WVDIR", "Direction of wind waves [deg]"}, + /* 102 */ {"WVHGT", "Sig height of wind waves [m]"}, + /* 103 */ {"WVPER", "Mean period of wind waves [s]"}, + /* 104 */ {"SWDIR", "Direction of swell waves [deg]"}, + /* 105 */ {"SWELL", "Sig height of swell waves [m]"}, + /* 106 */ {"SWPER", "Mean period of swell waves [s]"}, + /* 107 */ {"DIRPW", "Primary wave direction [deg]"}, + /* 108 */ {"PERPW", "Primary wave mean period [s]"}, + /* 109 */ {"DIRSW", "Secondary wave direction [deg]"}, + /* 110 */ {"PERSW", "Secondary wave mean period [s]"}, + /* 111 */ {"NSWRS", "Net short wave (surface) [W/m^2]"}, + /* 112 */ {"NLWRS", "Net long wave (surface) [W/m^2]"}, + /* 113 */ {"NSWRT", "Net short wave (top) [W/m^2]"}, + /* 114 */ {"NLWRT", "Net long wave (top) [W/m^2]"}, + /* 115 */ {"LWAVR", "Long wave [W/m^2]"}, + /* 116 */ {"SWAVR", "Short wave [W/m^2]"}, + /* 117 */ {"GRAD", "Global radiation [W/m^2]"}, + /* 118 */ {"BRTMP", "Brightness temperature [K]"}, + /* 119 */ {"LWRAD", "Radiance with respect to wave no. [W/m/sr]"}, + /* 120 */ {"SWRAD", "Radiance with respect ot wave len. [W/m^3/sr]"}, + /* 121 */ {"LHTFL", "Latent heat flux [W/m^2]"}, + /* 122 */ {"SHTFL", "Sensible heat flux [W/m^2]"}, + /* 123 */ {"BLYDP", "Boundary layer dissipation [W/m^2]"}, + /* 124 */ {"UFLX", "Zonal momentum flux [N/m^2]"}, + /* 125 */ {"VFLX", "Meridional momentum flux [N/m^2]"}, + /* 126 */ {"WMIXE", "Wind mixing energy [J]"}, + /* 127 */ {"IMGD", "Image data []"}, + /* 128 */ {"PAOT", "Probability anomaly of temp [%]"}, + /* 129 */ {"PAOP", "Probability anomaly of precip [%]"}, + /* 130 */ {"CWR", "Probability of wetting rain > 0.1 in [%]"}, + /* 131 */ {"FRAIN", "Rain fraction of total liquid water []"}, + /* 132 */ {"FICE", "Ice fraction of total condensate []"}, + /* 133 */ {"FRIME", "Rime factor []"}, + /* 134 */ {"CUEFI", "Convective cloud efficiency []"}, + /* 135 */ {"TCOND", "Total condensate [kg/kg]"}, + /* 136 */ {"TCOLW", "Total column cloud water [kg/m/m]"}, + /* 137 */ {"TCOLI", "Total column cloud ice [kg/m/m]"}, + /* 138 */ {"TCOLR", "Total column rain [kg/m/m]"}, + /* 139 */ {"TCOLS", "Total column snow [kg/m/m]"}, + /* 140 */ {"TCOLC", "Total column condensate [kg/m/m]"}, + /* 141 */ {"PLPL", "Pressure of level from which parcel was lifted [Pa]"}, + /* 142 */ {"HLPL", "Height of level from which parcel was lifted [m]"}, + /* 143 */ {"CEMS", "Cloud Emissivity [fraction]"}, + /* 144 */ {"COPD", "Cloud Optical Depth [non-dim]"}, + /* 145 */ {"PSIZ", "Effective Particle size [microns]"}, + /* 146 */ {"TCWAT", "Total Water Cloud [%]"}, + /* 147 */ {"TCICE", "Total Ice Cloud [%]"}, + /* 148 */ {"WDIF", "Wind Difference [m/s]"}, + /* 149 */ {"WSTP", "Wave Steepness [non-dim]"}, + /* 150 */ {"PTAN", "Probability of Temp. above normal [%]"}, + /* 151 */ {"PTNN", "Probability of Temp. near normal [%]"}, + /* 152 */ {"PTBN", "Probability of Temp. below normal [%]"}, + /* 153 */ {"PPAN", "Probability of Precip. above normal [%]"}, + /* 154 */ {"PPNN", "Probability of Precip. near normal [%]"}, + /* 155 */ {"PPBN", "Probability of Precip. below normal [%]"}, + /* 156 */ {"PMTC", "Particulate matter (coarse) [ug/m^3]"}, + /* 157 */ {"PMTF", "Particulate matter (fine) [ug/m^3]"}, + /* 158 */ {"AETMP", "Analysis Error of Temperature [K]"}, + /* 159 */ {"AEDPT", "Analysis Error of Dew Point [K]"}, + /* 160 */ {"AESPH", "Analysis Error of Specific Humidity [kg/kg] wne"}, + /* 161 */ {"AEUWD", "Analysis Error of U-wind [m/s]"}, + /* 162 */ {"AEVWD", "Analysis Error of V-wind [m/s]"}, + /* 163 */ {"LPMTF", "Particulate matter (fine) [log10(ug/m^3)]"}, + /* 164 */ {"LIPMF", "Integrated Column Particulate matter (fine) [log10(ug/m^2)] wne"}, + /* 165 */ {"REFZR", "Derived radar reflectivity backscatter from rain [mm^6/m^3]"}, + /* 166 */ {"REFZI", "Derived radar reflectivity backscatter from ice [mm^6/m^3]"}, + /* 167 */ {"REFZC", "Derived radar reflectivity backscatter from parameterized convection [mm^6/m^3]"}, + /* 168 */ {"TCLSW", "Integrated supercooled liquid water [kg/m^2]"}, + /* 169 */ {"TCOLM", "Total Column Integrated Melting Ice [kg/m^2]"}, + /* 170 */ {"ELRDI", "Ellrod Index [non-dim]"}, + /* 171 */ {"TSEC", "Seconds prior to initial reference time [sec]"}, + /* 172 */ {"TSECA", "Seconds after initial reference time [sec]"}, + /* 173 */ {"NUM", "Number of samples/observations [non-dim]"}, + /* 174 */ {"AEPRS", "Analysis Error of Pressure [Pa]"}, + /* 175 */ {"ICSEV", "Icing Severity [non-dim]"}, + /* 176 */ {"ICPRB", "Icing Probability [non-dim]"}, + /* 177 */ {"LAVNI", "Low-level Aviation Interest [non-dim]"}, + /* 178 */ {"HAVNI", "High-level Aviation Interest [non-dim]"}, + /* 179 */ {"FLGHT", "Flight Category [non-dim]"}, + /* 180 */ {"OZCON", "Ozone concentration [ppb]"}, + /* 181 */ {"OZCAT", "Categorical ozone concentration [?]"}, + /* 182 */ {"VEDH", "vertical heat eddy diffusivity [m^2/s]"}, + /* 183 */ {"SIGV", "Sigma level value [non-dim]"}, + /* 184 */ {"EWGT", "Ensemble Weight [non-dim]"}, + /* 185 */ {"CICEL", "Confidence indicator - Ceiling [non-dim]"}, + /* 186 */ {"CIVIS", "Confidence indicator - Visibility [non-dim]"}, + /* 187 */ {"CIFLT", "Confidence indicator - Flight Category [non-dim]"}, + /* 188 */ {"LAVV", "Latitude of V wind component of velocity [deg]"}, + /* 189 */ {"LOVV", "Longitude of V wind component of velocity [deg]"}, + /* 190 */ {"USCT", "Scatterometer est. U wind component [m/s]"}, + /* 191 */ {"VSCT", "Scatterometer est. V wind component [m/s]"}, + /* 192 */ {"LAUV", "Latitude of U wind component of velocity [deg]"}, + /* 193 */ {"LOUV", "Longitude of U wind component of velocity [deg]"}, + /* 194 */ {"TCHP", "Tropical Cyclone Heat Potential [J/m^2]"}, + /* 195 */ {"DBSS", "Geometric Depth Below Sea Surface [m]"}, + /* 196 */ {"ODHA", "Ocean Dynamic Heat Anomaly [dynamic m]"}, + /* 197 */ {"OHC", "Ocean Heat Content [J/m^2]"}, + /* 198 */ {"SSHG", "Sea Surface Height Relative to Geoid [m]"}, + /* 199 */ {"SLTFL", "Salt flux [g/cm^2/s]"}, + /* 200 */ {"DUVB", "UV-B Downward Solar Flux [W/m^2]"}, + /* 201 */ {"CDUVB", "Clear Sky UV-B Downward Solar Flux [W/m^2]"}, + /* 202 */ {"THFLX", "Total downward heat flux at surface [W/m^2]"}, + /* 203 */ {"UVAR", "U velocity variance [m^2/s^2]"}, + /* 204 */ {"VVAR", "V velocity variance [m^2/s^2]"}, + /* 205 */ {"UVVCC", "UV Velocity Cross Correlation [m^2/s^2]"}, + /* 206 */ {"MCLS", "Meteorological Correlation Length Scale [m]"}, + /* 207 */ {"LAPP", "Latitude of pressure point [deg]"}, + /* 208 */ {"LOPP", "Longitude of pressure point [deg]"}, + /* 209 */ {"var209", "undefined"}, + /* 210 */ {"REFO", "Observed radar reflectivity [dbZ]"}, + /* 211 */ {"REFD", "Derived radar reflectivity [dbZ]"}, + /* 212 */ {"REFC", "Maximum/Composite radar reflectivity [dbZ]"}, + /* 213 */ {"SBT122", "Simulated Brightness Temperature for GOES12, Channel 2 [K]"}, + /* 214 */ {"SBT123", "Simulated Brightness Temperature for GOES12, Channel 3 [K]"}, + /* 215 */ {"SBT124", "Simulated Brightness Temperature for GOES12, Channel 4 [K]"}, + /* 216 */ {"SBT125", "Simulated Brightness Temperature for GOES12, Channel 5 [K]"}, + /* 217 */ {"MINRH", "Minimum Relative Humumidity [%]"}, + /* 218 */ {"MAXRH", "Maximum Relative Humumidity [%]"}, + /* 219 */ {"CEIL", "Ceiling [m]"}, + /* 220 */ {"PBLREG", "Planetary boundary layer regime []"}, + /* 221 */ {"SBC123", "Simulated brightness counts for GOES12, Channel 3 [byte]"}, + /* 222 */ {"SBC124", "Simulated brightness counts for GOES12, Channel 4 [byte]"}, + /* 223 */ {"RPRATE", "Rain precipitation rate [kg/m^2/s]"}, + /* 224 */ {"SPRATE", "Snow precipitation rate [kg/m^2/s]"}, + /* 225 */ {"FPRATE", "Freezing rain precipitation rate [kg/m^2/s]"}, + /* 226 */ {"IPRATE", "Ice pellets precipitation rate [kg/m^2/s]"}, + /* 227 */ {"UPHL", "Updraft Helicity [m^2/s^2]"}, + /* 228 */ {"SURGE", "Storm Surge [m]"}, + /* 229 */ {"ETSRG", "Extra-tropical storm Surge [m]"}, + /* 230 */ {"RHPW", "Relative humidity with respect to precip water [%]"}, + /* 231 */ {"OZMAX1", "Ozone daily max from 1-hour ave [ppbV]"}, + /* 232 */ {"OZMAX8", "Ozone daily max from 8-hour ave [ppbV]"}, + /* 233 */ {"PDMAX1", "PM 2.5 daily max from 1-hour ave [ug/m^3]"}, + /* 234 */ {"PDMAX24", "PM 2.5 daily max from 24-hour ave [ug/m^3]"}, + /* 235 */ {"MAXREF", "Hourly max of sim. reflect at 1km AGL [dbZ]"}, + /* 236 */ {"MXUPHL", "Hourly max updraft helicity 2-5km AGL [m^2/s^2]"}, + /* 237 */ {"MAXUVV", "Hourly max upward vert vel in lowest 400mb [m/s]"}, + /* 238 */ {"MAXDVV", "Hourly max downward vert fel in lowest 400mb [m/s]"}, + /* 239 */ {"MAXVIG", "Hourly max column graupel [kg/m^2]"}, + /* 240 */ {"RETOP", "Radar echo top (18.3 dbZ) [m]"}, + /* 241 */ {"VRATE", "Ventilation rate [m^2/s]"}, + /* 242 */ {"TCSRG20", "20% tropical cyclone storm exceedance [m]"}, + /* 243 */ {"TCSRG30", "30% tropical cyclone storm exceedance [m]"}, + /* 244 */ {"TCSRG40", "40% tropical cyclone storm exceedance [m]"}, + /* 245 */ {"TCSRG50", "50% tropical cyclone storm exceedance [m]"}, + /* 246 */ {"TCSRG60", "60% tropical cyclone storm exceedance [m]"}, + /* 247 */ {"TCSRG70", "70% tropical cyclone storm exceedance [m]"}, + /* 248 */ {"TCSRG80", "80% tropical cyclone storm exceedance [m]"}, + /* 249 */ {"TCSRG90", "90% tropical cyclone storm exceedance [m]"}, + /* 250 */ {"HINDEX", "Haines index []"}, + /* 251 */ {"DIFTEN", "Difference between 2 states in total energy norm [J/kg]"}, + /* 252 */ {"PSPCP", "Pseudo-precipitation [kg/m^2]"}, + /* 253 */ {"MAXUW", "U of hourly max 10m wind speed [m/s]"}, + /* 254 */ {"MAXVW", "V of hourly max 10m wind speed [m/s]"}, + /* 255 */ {"var255", "undefined"}, +}; + +const struct ParmTable parm_table_nceptab_140[256] = { + /* 0 */ {"var0", "undefined"}, + /* 1 */ {"PRES", "Pressure [Pa]"}, + /* 2 */ {"PRMSL", "Pressure reduced to MSL [Pa]"}, + /* 3 */ {"PTEND", "Pressure tendency [Pa/s]"}, + /* 4 */ {"PVORT", "Pot. vorticity [km^2/kg/s]"}, + /* 5 */ {"ICAHT", "ICAO Standard Atmosphere Reference Height [M]"}, + /* 6 */ {"GP", "Geopotential [m^2/s^2]"}, + /* 7 */ {"HGT", "Geopotential height [gpm]"}, + /* 8 */ {"DIST", "Geometric height [m]"}, + /* 9 */ {"HSTDV", "Std dev of height [m]"}, + /* 10 */ {"TOZNE", "Total ozone [Dobson]"}, + /* 11 */ {"TMP", "Temp. [K]"}, + /* 12 */ {"VTMP", "Virtual temp. [K]"}, + /* 13 */ {"POT", "Potential temp. [K]"}, + /* 14 */ {"EPOT", "Pseudo-adiabatic pot. temp. [K]"}, + /* 15 */ {"TMAX", "Max. temp. [K]"}, + /* 16 */ {"TMIN", "Min. temp. [K]"}, + /* 17 */ {"DPT", "Dew point temp. [K]"}, + /* 18 */ {"DEPR", "Dew point depression [K]"}, + /* 19 */ {"LAPR", "Lapse rate [K/m]"}, + /* 20 */ {"VIS", "Visibility [m]"}, + /* 21 */ {"RDSP1", "Radar spectra (1) [non-dim]"}, + /* 22 */ {"RDSP2", "Radar spectra (2) [non-dim]"}, + /* 23 */ {"RDSP3", "Radar spectra (3) [non-dim]"}, + /* 24 */ {"PLI", "Parcel lifted index (to 500 hPa) [K]"}, + /* 25 */ {"TMPA", "Temp. anomaly [K]"}, + /* 26 */ {"PRESA", "Pressure anomaly [Pa]"}, + /* 27 */ {"GPA", "Geopotential height anomaly [gpm]"}, + /* 28 */ {"WVSP1", "Wave spectra (1) [non-dim]"}, + /* 29 */ {"WVSP2", "Wave spectra (2) [non-dim]"}, + /* 30 */ {"WVSP3", "Wave spectra (3) [non-dim]"}, + /* 31 */ {"WDIR", "Wind direction [deg]"}, + /* 32 */ {"WIND", "Wind speed [m/s]"}, + /* 33 */ {"UGRD", "u wind [m/s]"}, + /* 34 */ {"VGRD", "v wind [m/s]"}, + /* 35 */ {"STRM", "Stream function [m^2/s]"}, + /* 36 */ {"VPOT", "Velocity potential [m^2/s]"}, + /* 37 */ {"MNTSF", "Montgomery stream function [m^2/s^2]"}, + /* 38 */ {"SGCVV", "Sigma coord. vertical velocity [/s]"}, + /* 39 */ {"VVEL", "Pressure vertical velocity [Pa/s]"}, + /* 40 */ {"DZDT", "Geometric vertical velocity [m/s]"}, + /* 41 */ {"ABSV", "Absolute vorticity [/s]"}, + /* 42 */ {"ABSD", "Absolute divergence [/s]"}, + /* 43 */ {"RELV", "Relative vorticity [/s]"}, + /* 44 */ {"RELD", "Relative divergence [/s]"}, + /* 45 */ {"VUCSH", "Vertical u shear [/s]"}, + /* 46 */ {"VVCSH", "Vertical v shear [/s]"}, + /* 47 */ {"DIRC", "Direction of current [deg]"}, + /* 48 */ {"SPC", "Speed of current [m/s]"}, + /* 49 */ {"UOGRD", "u of current [m/s]"}, + /* 50 */ {"VOGRD", "v of current [m/s]"}, + /* 51 */ {"SPFH", "Specific humidity [kg/kg]"}, + /* 52 */ {"RH", "Relative humidity [%]"}, + /* 53 */ {"MIXR", "Humidity mixing ratio [kg/kg]"}, + /* 54 */ {"PWAT", "Precipitable water [kg/m^2]"}, + /* 55 */ {"VAPP", "Vapor pressure [Pa]"}, + /* 56 */ {"SATD", "Saturation deficit [Pa]"}, + /* 57 */ {"EVP", "Evaporation [kg/m^2]"}, + /* 58 */ {"CICE", "Cloud Ice [kg/m^2]"}, + /* 59 */ {"PRATE", "Precipitation rate [kg/m^2/s]"}, + /* 60 */ {"TSTM", "Thunderstorm probability [%]"}, + /* 61 */ {"APCP", "Total precipitation [kg/m^2]"}, + /* 62 */ {"NCPCP", "Large scale precipitation [kg/m^2]"}, + /* 63 */ {"ACPCP", "Convective precipitation [kg/m^2]"}, + /* 64 */ {"SRWEQ", "Snowfall rate water equiv. [kg/m^2/s]"}, + /* 65 */ {"WEASD", "Accum. snow [kg/m^2]"}, + /* 66 */ {"SNOD", "Snow depth [m]"}, + /* 67 */ {"MIXHT", "Mixed layer depth [m]"}, + /* 68 */ {"TTHDP", "Transient thermocline depth [m]"}, + /* 69 */ {"MTHD", "Main thermocline depth [m]"}, + /* 70 */ {"MTHA", "Main thermocline anomaly [m]"}, + /* 71 */ {"TCDC", "Total cloud cover [%]"}, + /* 72 */ {"CDCON", "Convective cloud cover [%]"}, + /* 73 */ {"LCDC", "Low level cloud cover [%]"}, + /* 74 */ {"MCDC", "Mid level cloud cover [%]"}, + /* 75 */ {"HCDC", "High level cloud cover [%]"}, + /* 76 */ {"CWAT", "Cloud water [kg/m^2]"}, + /* 77 */ {"BLI", "Best lifted index (to 500 hPa) [K]"}, + /* 78 */ {"SNOC", "Convective snow [kg/m^2]"}, + /* 79 */ {"SNOL", "Large scale snow [kg/m^2]"}, + /* 80 */ {"WTMP", "Water temp. [K]"}, + /* 81 */ {"LAND", "Land cover (land=1;sea=0) [fraction]"}, + /* 82 */ {"DSLM", "Deviation of sea level from mean [m]"}, + /* 83 */ {"SFCR", "Surface roughness [m]"}, + /* 84 */ {"ALBDO", "Albedo [%]"}, + /* 85 */ {"TSOIL", "Soil temp. [K]"}, + /* 86 */ {"SOILM", "Soil moisture content [kg/m^2]"}, + /* 87 */ {"VEG", "Vegetation [%]"}, + /* 88 */ {"SALTY", "Salinity [kg/kg]"}, + /* 89 */ {"DEN", "Density [kg/m^3]"}, + /* 90 */ {"WATR", "Water runoff [kg/m^2]"}, + /* 91 */ {"ICEC", "Ice concentration (ice=1;no ice=0) [fraction]"}, + /* 92 */ {"ICETK", "Ice thickness [m]"}, + /* 93 */ {"DICED", "Direction of ice drift [deg]"}, + /* 94 */ {"SICED", "Speed of ice drift [m/s]"}, + /* 95 */ {"UICE", "u of ice drift [m/s]"}, + /* 96 */ {"VICE", "v of ice drift [m/s]"}, + /* 97 */ {"ICEG", "Ice growth rate [m/s]"}, + /* 98 */ {"ICED", "Ice divergence [/s]"}, + /* 99 */ {"SNOM", "Snow melt [kg/m^2]"}, + /* 100 */ {"HTSGW", "Sig height of wind waves and swell [m]"}, + /* 101 */ {"WVDIR", "Direction of wind waves [deg]"}, + /* 102 */ {"WVHGT", "Sig height of wind waves [m]"}, + /* 103 */ {"WVPER", "Mean period of wind waves [s]"}, + /* 104 */ {"SWDIR", "Direction of swell waves [deg]"}, + /* 105 */ {"SWELL", "Sig height of swell waves [m]"}, + /* 106 */ {"SWPER", "Mean period of swell waves [s]"}, + /* 107 */ {"DIRPW", "Primary wave direction [deg]"}, + /* 108 */ {"PERPW", "Primary wave mean period [s]"}, + /* 109 */ {"DIRSW", "Secondary wave direction [deg]"}, + /* 110 */ {"PERSW", "Secondary wave mean period [s]"}, + /* 111 */ {"NSWRS", "Net short wave (surface) [W/m^2]"}, + /* 112 */ {"NLWRS", "Net long wave (surface) [W/m^2]"}, + /* 113 */ {"NSWRT", "Net short wave (top) [W/m^2]"}, + /* 114 */ {"NLWRT", "Net long wave (top) [W/m^2]"}, + /* 115 */ {"LWAVR", "Long wave [W/m^2]"}, + /* 116 */ {"SWAVR", "Short wave [W/m^2]"}, + /* 117 */ {"GRAD", "Global radiation [W/m^2]"}, + /* 118 */ {"BRTMP", "Brightness temperature [K]"}, + /* 119 */ {"LWRAD", "Radiance with respect to wave no. [W/m/sr]"}, + /* 120 */ {"SWRAD", "Radiance with respect ot wave len. [W/m^3/sr]"}, + /* 121 */ {"LHTFL", "Latent heat flux [W/m^2]"}, + /* 122 */ {"SHTFL", "Sensible heat flux [W/m^2]"}, + /* 123 */ {"BLYDP", "Boundary layer dissipation [W/m^2]"}, + /* 124 */ {"UFLX", "Zonal momentum flux [N/m^2]"}, + /* 125 */ {"VFLX", "Meridional momentum flux [N/m^2]"}, + /* 126 */ {"WMIXE", "Wind mixing energy [J]"}, + /* 127 */ {"IMGD", "Image data []"}, + /* 128 */ {"var128", "undefined"}, + /* 129 */ {"var129", "undefined"}, + /* 130 */ {"var130", "undefined"}, + /* 131 */ {"var131", "undefined"}, + /* 132 */ {"var132", "undefined"}, + /* 133 */ {"var133", "undefined"}, + /* 134 */ {"var134", "undefined"}, + /* 135 */ {"var135", "undefined"}, + /* 136 */ {"var136", "undefined"}, + /* 137 */ {"var137", "undefined"}, + /* 138 */ {"var138", "undefined"}, + /* 139 */ {"var139", "undefined"}, + /* 140 */ {"var140", "undefined"}, + /* 141 */ {"var141", "undefined"}, + /* 142 */ {"var142", "undefined"}, + /* 143 */ {"var143", "undefined"}, + /* 144 */ {"var144", "undefined"}, + /* 145 */ {"var145", "undefined"}, + /* 146 */ {"var146", "undefined"}, + /* 147 */ {"var147", "undefined"}, + /* 148 */ {"var148", "undefined"}, + /* 149 */ {"var149", "undefined"}, + /* 150 */ {"var150", "undefined"}, + /* 151 */ {"var151", "undefined"}, + /* 152 */ {"var152", "undefined"}, + /* 153 */ {"var153", "undefined"}, + /* 154 */ {"var154", "undefined"}, + /* 155 */ {"var155", "undefined"}, + /* 156 */ {"var156", "undefined"}, + /* 157 */ {"var157", "undefined"}, + /* 158 */ {"var158", "undefined"}, + /* 159 */ {"var159", "undefined"}, + /* 160 */ {"var160", "undefined"}, + /* 161 */ {"var161", "undefined"}, + /* 162 */ {"var162", "undefined"}, + /* 163 */ {"var163", "undefined"}, + /* 164 */ {"var164", "undefined"}, + /* 165 */ {"var165", "undefined"}, + /* 166 */ {"var166", "undefined"}, + /* 167 */ {"var167", "undefined"}, + /* 168 */ {"MEIP", "Mean icing potential []"}, + /* 169 */ {"MAIP", "Maximum icing potential []"}, + /* 170 */ {"MECTP", "Mean in-cloud turbulence potential []"}, + /* 171 */ {"MACTP", "Maximum in-cloud turbulence potential []"}, + /* 172 */ {"MECAT", "Mean cloud air turbulence potential []"}, + /* 173 */ {"MACAT", "Maximum cloud air turbulence potential []"}, + /* 174 */ {"CBHE", "Cumulonimbus horizontal extent [%]"}, + /* 175 */ {"PCBB", "Pressure at cumblonimbus base [Pa]"}, + /* 176 */ {"PCBT", "Pressure at cumblonimbus top [Pa]"}, + /* 177 */ {"PECBB", "Pressure at embedded cumblonimbus base [Pa]"}, + /* 178 */ {"PECBT", "Pressure at embedded cumblonimbus top [Pa]"}, + /* 179 */ {"HCBB", "ICAO height at cumblonimbus base [m]"}, + /* 180 */ {"HCBT", "ICAO height at cumblonimbus top [m]"}, + /* 181 */ {"HECBB", "ICAO height at embedded cumblonimbus base [m]"}, + /* 182 */ {"HECBT", "ICAO height at embedded cumblonimbus top [m]"}, + /* 183 */ {"var183", "undefined"}, + /* 184 */ {"var184", "undefined"}, + /* 185 */ {"var185", "undefined"}, + /* 186 */ {"var186", "undefined"}, + /* 187 */ {"var187", "undefined"}, + /* 188 */ {"var188", "undefined"}, + /* 189 */ {"var189", "undefined"}, + /* 190 */ {"var190", "undefined"}, + /* 191 */ {"var191", "undefined"}, + /* 192 */ {"var192", "undefined"}, + /* 193 */ {"var193", "undefined"}, + /* 194 */ {"var194", "undefined"}, + /* 195 */ {"var195", "undefined"}, + /* 196 */ {"var196", "undefined"}, + /* 197 */ {"var197", "undefined"}, + /* 198 */ {"var198", "undefined"}, + /* 199 */ {"var199", "undefined"}, + /* 200 */ {"var200", "undefined"}, + /* 201 */ {"var201", "undefined"}, + /* 202 */ {"var202", "undefined"}, + /* 203 */ {"var203", "undefined"}, + /* 204 */ {"var204", "undefined"}, + /* 205 */ {"var205", "undefined"}, + /* 206 */ {"var206", "undefined"}, + /* 207 */ {"var207", "undefined"}, + /* 208 */ {"var208", "undefined"}, + /* 209 */ {"var209", "undefined"}, + /* 210 */ {"var210", "undefined"}, + /* 211 */ {"var211", "undefined"}, + /* 212 */ {"var212", "undefined"}, + /* 213 */ {"var213", "undefined"}, + /* 214 */ {"var214", "undefined"}, + /* 215 */ {"var215", "undefined"}, + /* 216 */ {"var216", "undefined"}, + /* 217 */ {"var217", "undefined"}, + /* 218 */ {"var218", "undefined"}, + /* 219 */ {"var219", "undefined"}, + /* 220 */ {"var220", "undefined"}, + /* 221 */ {"var221", "undefined"}, + /* 222 */ {"var222", "undefined"}, + /* 223 */ {"var223", "undefined"}, + /* 224 */ {"var224", "undefined"}, + /* 225 */ {"var225", "undefined"}, + /* 226 */ {"var226", "undefined"}, + /* 227 */ {"var227", "undefined"}, + /* 228 */ {"var228", "undefined"}, + /* 229 */ {"var229", "undefined"}, + /* 230 */ {"var230", "undefined"}, + /* 231 */ {"var231", "undefined"}, + /* 232 */ {"var232", "undefined"}, + /* 233 */ {"var233", "undefined"}, + /* 234 */ {"var234", "undefined"}, + /* 235 */ {"var235", "undefined"}, + /* 236 */ {"var236", "undefined"}, + /* 237 */ {"var237", "undefined"}, + /* 238 */ {"var238", "undefined"}, + /* 239 */ {"var239", "undefined"}, + /* 240 */ {"var240", "undefined"}, + /* 241 */ {"var241", "undefined"}, + /* 242 */ {"var242", "undefined"}, + /* 243 */ {"var243", "undefined"}, + /* 244 */ {"var244", "undefined"}, + /* 245 */ {"var245", "undefined"}, + /* 246 */ {"var246", "undefined"}, + /* 247 */ {"var247", "undefined"}, + /* 248 */ {"var248", "undefined"}, + /* 249 */ {"var249", "undefined"}, + /* 250 */ {"var250", "undefined"}, + /* 251 */ {"var251", "undefined"}, + /* 252 */ {"var252", "undefined"}, + /* 253 */ {"var253", "undefined"}, + /* 254 */ {"var254", "undefined"}, + /* 255 */ {"var255", "undefined"}, +}; + +const struct ParmTable parm_table_nceptab_141[256] = { + /* 0 */ {"var0", "undefined"}, + /* 1 */ {"PRES", "Pressure [Pa]"}, + /* 2 */ {"PRMSL", "Pressure reduced to MSL [Pa]"}, + /* 3 */ {"PTEND", "Pressure tendency [Pa/s]"}, + /* 4 */ {"PVORT", "Pot. vorticity [km^2/kg/s]"}, + /* 5 */ {"ICAHT", "ICAO Standard Atmosphere Reference Height [M]"}, + /* 6 */ {"GP", "Geopotential [m^2/s^2]"}, + /* 7 */ {"HGT", "Geopotential height [gpm]"}, + /* 8 */ {"DIST", "Geometric height [m]"}, + /* 9 */ {"HSTDV", "Std dev of height [m]"}, + /* 10 */ {"TOZNE", "Total ozone [Dobson]"}, + /* 11 */ {"TMP", "Temp. [K]"}, + /* 12 */ {"VTMP", "Virtual temp. [K]"}, + /* 13 */ {"POT", "Potential temp. [K]"}, + /* 14 */ {"EPOT", "Pseudo-adiabatic pot. temp. [K]"}, + /* 15 */ {"TMAX", "Max. temp. [K]"}, + /* 16 */ {"TMIN", "Min. temp. [K]"}, + /* 17 */ {"DPT", "Dew point temp. [K]"}, + /* 18 */ {"DEPR", "Dew point depression [K]"}, + /* 19 */ {"LAPR", "Lapse rate [K/m]"}, + /* 20 */ {"VIS", "Visibility [m]"}, + /* 21 */ {"RDSP1", "Radar spectra (1) [non-dim]"}, + /* 22 */ {"RDSP2", "Radar spectra (2) [non-dim]"}, + /* 23 */ {"RDSP3", "Radar spectra (3) [non-dim]"}, + /* 24 */ {"PLI", "Parcel lifted index (to 500 hPa) [K]"}, + /* 25 */ {"TMPA", "Temp. anomaly [K]"}, + /* 26 */ {"PRESA", "Pressure anomaly [Pa]"}, + /* 27 */ {"GPA", "Geopotential height anomaly [gpm]"}, + /* 28 */ {"WVSP1", "Wave spectra (1) [non-dim]"}, + /* 29 */ {"WVSP2", "Wave spectra (2) [non-dim]"}, + /* 30 */ {"WVSP3", "Wave spectra (3) [non-dim]"}, + /* 31 */ {"WDIR", "Wind direction [deg]"}, + /* 32 */ {"WIND", "Wind speed [m/s]"}, + /* 33 */ {"UGRD", "u wind [m/s]"}, + /* 34 */ {"VGRD", "v wind [m/s]"}, + /* 35 */ {"STRM", "Stream function [m^2/s]"}, + /* 36 */ {"VPOT", "Velocity potential [m^2/s]"}, + /* 37 */ {"MNTSF", "Montgomery stream function [m^2/s^2]"}, + /* 38 */ {"SGCVV", "Sigma coord. vertical velocity [/s]"}, + /* 39 */ {"VVEL", "Pressure vertical velocity [Pa/s]"}, + /* 40 */ {"DZDT", "Geometric vertical velocity [m/s]"}, + /* 41 */ {"ABSV", "Absolute vorticity [/s]"}, + /* 42 */ {"ABSD", "Absolute divergence [/s]"}, + /* 43 */ {"RELV", "Relative vorticity [/s]"}, + /* 44 */ {"RELD", "Relative divergence [/s]"}, + /* 45 */ {"VUCSH", "Vertical u shear [/s]"}, + /* 46 */ {"VVCSH", "Vertical v shear [/s]"}, + /* 47 */ {"DIRC", "Direction of current [deg]"}, + /* 48 */ {"SPC", "Speed of current [m/s]"}, + /* 49 */ {"UOGRD", "u of current [m/s]"}, + /* 50 */ {"VOGRD", "v of current [m/s]"}, + /* 51 */ {"SPFH", "Specific humidity [kg/kg]"}, + /* 52 */ {"RH", "Relative humidity [%]"}, + /* 53 */ {"MIXR", "Humidity mixing ratio [kg/kg]"}, + /* 54 */ {"PWAT", "Precipitable water [kg/m^2]"}, + /* 55 */ {"VAPP", "Vapor pressure [Pa]"}, + /* 56 */ {"SATD", "Saturation deficit [Pa]"}, + /* 57 */ {"EVP", "Evaporation [kg/m^2]"}, + /* 58 */ {"CICE", "Cloud Ice [kg/m^2]"}, + /* 59 */ {"PRATE", "Precipitation rate [kg/m^2/s]"}, + /* 60 */ {"TSTM", "Thunderstorm probability [%]"}, + /* 61 */ {"APCP", "Total precipitation [kg/m^2]"}, + /* 62 */ {"NCPCP", "Large scale precipitation [kg/m^2]"}, + /* 63 */ {"ACPCP", "Convective precipitation [kg/m^2]"}, + /* 64 */ {"SRWEQ", "Snowfall rate water equiv. [kg/m^2/s]"}, + /* 65 */ {"WEASD", "Accum. snow [kg/m^2]"}, + /* 66 */ {"SNOD", "Snow depth [m]"}, + /* 67 */ {"MIXHT", "Mixed layer depth [m]"}, + /* 68 */ {"TTHDP", "Transient thermocline depth [m]"}, + /* 69 */ {"MTHD", "Main thermocline depth [m]"}, + /* 70 */ {"MTHA", "Main thermocline anomaly [m]"}, + /* 71 */ {"TCDC", "Total cloud cover [%]"}, + /* 72 */ {"CDCON", "Convective cloud cover [%]"}, + /* 73 */ {"LCDC", "Low level cloud cover [%]"}, + /* 74 */ {"MCDC", "Mid level cloud cover [%]"}, + /* 75 */ {"HCDC", "High level cloud cover [%]"}, + /* 76 */ {"CWAT", "Cloud water [kg/m^2]"}, + /* 77 */ {"BLI", "Best lifted index (to 500 hPa) [K]"}, + /* 78 */ {"SNOC", "Convective snow [kg/m^2]"}, + /* 79 */ {"SNOL", "Large scale snow [kg/m^2]"}, + /* 80 */ {"WTMP", "Water temp. [K]"}, + /* 81 */ {"LAND", "Land cover (land=1;sea=0) [fraction]"}, + /* 82 */ {"DSLM", "Deviation of sea level from mean [m]"}, + /* 83 */ {"SFCR", "Surface roughness [m]"}, + /* 84 */ {"ALBDO", "Albedo [%]"}, + /* 85 */ {"TSOIL", "Soil temp. [K]"}, + /* 86 */ {"SOILM", "Soil moisture content [kg/m^2]"}, + /* 87 */ {"VEG", "Vegetation [%]"}, + /* 88 */ {"SALTY", "Salinity [kg/kg]"}, + /* 89 */ {"DEN", "Density [kg/m^3]"}, + /* 90 */ {"WATR", "Water runoff [kg/m^2]"}, + /* 91 */ {"ICEC", "Ice concentration (ice=1;no ice=0) [fraction]"}, + /* 92 */ {"ICETK", "Ice thickness [m]"}, + /* 93 */ {"DICED", "Direction of ice drift [deg]"}, + /* 94 */ {"SICED", "Speed of ice drift [m/s]"}, + /* 95 */ {"UICE", "u of ice drift [m/s]"}, + /* 96 */ {"VICE", "v of ice drift [m/s]"}, + /* 97 */ {"ICEG", "Ice growth rate [m/s]"}, + /* 98 */ {"ICED", "Ice divergence [/s]"}, + /* 99 */ {"SNOM", "Snow melt [kg/m^2]"}, + /* 100 */ {"HTSGW", "Sig height of wind waves and swell [m]"}, + /* 101 */ {"WVDIR", "Direction of wind waves [deg]"}, + /* 102 */ {"WVHGT", "Sig height of wind waves [m]"}, + /* 103 */ {"WVPER", "Mean period of wind waves [s]"}, + /* 104 */ {"SWDIR", "Direction of swell waves [deg]"}, + /* 105 */ {"SWELL", "Sig height of swell waves [m]"}, + /* 106 */ {"SWPER", "Mean period of swell waves [s]"}, + /* 107 */ {"DIRPW", "Primary wave direction [deg]"}, + /* 108 */ {"PERPW", "Primary wave mean period [s]"}, + /* 109 */ {"DIRSW", "Secondary wave direction [deg]"}, + /* 110 */ {"PERSW", "Secondary wave mean period [s]"}, + /* 111 */ {"NSWRS", "Net short wave (surface) [W/m^2]"}, + /* 112 */ {"NLWRS", "Net long wave (surface) [W/m^2]"}, + /* 113 */ {"NSWRT", "Net short wave (top) [W/m^2]"}, + /* 114 */ {"NLWRT", "Net long wave (top) [W/m^2]"}, + /* 115 */ {"LWAVR", "Long wave [W/m^2]"}, + /* 116 */ {"SWAVR", "Short wave [W/m^2]"}, + /* 117 */ {"GRAD", "Global radiation [W/m^2]"}, + /* 118 */ {"BRTMP", "Brightness temperature [K]"}, + /* 119 */ {"LWRAD", "Radiance with respect to wave no. [W/m/sr]"}, + /* 120 */ {"SWRAD", "Radiance with respect ot wave len. [W/m^3/sr]"}, + /* 121 */ {"LHTFL", "Latent heat flux [W/m^2]"}, + /* 122 */ {"SHTFL", "Sensible heat flux [W/m^2]"}, + /* 123 */ {"BLYDP", "Boundary layer dissipation [W/m^2]"}, + /* 124 */ {"UFLX", "Zonal momentum flux [N/m^2]"}, + /* 125 */ {"VFLX", "Meridional momentum flux [N/m^2]"}, + /* 126 */ {"WMIXE", "Wind mixing energy [J]"}, + /* 127 */ {"IMGD", "Image data []"}, + /* 128 */ {"EXTNC", "Aerosol Extinction Coefficient [1/km]"}, + /* 129 */ {"AOD", "Aerosol Optical Depth [-]"}, + /* 130 */ {"ASFTR", "Aerosol Asymmetry Factor [-]"}, + /* 131 */ {"SSALBD", "Aerosol Single Scatter Albedo [-]"}, + /* 132 */ {"BSCTRS", "Aerosol Back Scattering [1/km/sr]"}, + /* 133 */ {"var133", "undefined"}, + /* 134 */ {"var134", "undefined"}, + /* 135 */ {"var135", "undefined"}, + /* 136 */ {"var136", "undefined"}, + /* 137 */ {"var137", "undefined"}, + /* 138 */ {"var138", "undefined"}, + /* 139 */ {"var139", "undefined"}, + /* 140 */ {"NOy", "Total Inorganic and Organic Nitrates [ppbV]"}, + /* 141 */ {"NO", "Nitrogen Oxide [ppbV]"}, + /* 142 */ {"NO2", "Nitrogen Dioxide [ppbV]"}, + /* 143 */ {"N2O5", "Nitrogen Pentoxide [ppbV]"}, + /* 144 */ {"HNO3", "Nitric Acid [ppbV]"}, + /* 145 */ {"NO3", "Nitrogen Trioxide [ppbV]"}, + /* 146 */ {"PNA", "Peroxynitric Acid [ppbV]"}, + /* 147 */ {"HONO", "Nitrous Acid [ppbV]"}, + /* 148 */ {"CO", "Carbon Monoxide [ppbV]"}, + /* 149 */ {"NH3", "Ammonia [ppbV]"}, + /* 150 */ {"HCL", "Hydrogen Chloride [ppbV]"}, + /* 151 */ {"var151", "undefined"}, + /* 152 */ {"var152", "undefined"}, + /* 153 */ {"var153", "undefined"}, + /* 154 */ {"var154", "undefined"}, + /* 155 */ {"var155", "undefined"}, + /* 156 */ {"var156", "undefined"}, + /* 157 */ {"var157", "undefined"}, + /* 158 */ {"var158", "undefined"}, + /* 159 */ {"PAR", "Lumped Single-Bond Carbon Specie [ppbV]"}, + /* 160 */ {"ETHE", "Ethene [ppbV]"}, + /* 161 */ {"OLE", "Lumped Double-Bond Carbon Species Less Ethene [ppbV]"}, + /* 162 */ {"TOL", "Toluene [ppbV]"}, + /* 163 */ {"XYL", "Xylene [ppbV]"}, + /* 164 */ {"ISOP", "Isoprene [ppbV]"}, + /* 165 */ {"var165", "undefined"}, + /* 166 */ {"FORM", "Formaldehyde [ppbV]"}, + /* 167 */ {"ALD2", "Acetaldehyde & Higher Aldehydes [ppbV]"}, + /* 168 */ {"MGLY", "Methyl Glyoxal [ppbV]"}, + /* 169 */ {"CRES", "Cresol and Higher Molecular Weight Phenols [ppbV]"}, + /* 170 */ {"var170", "undefined"}, + /* 171 */ {"var171", "undefined"}, + /* 172 */ {"PAN", "Peroxyacyl Nitrate [ppbV]"}, + /* 173 */ {"NTR", "Lumped Gaseous Organic Nitrate [ppbV]"}, + /* 174 */ {"var174", "undefined"}, + /* 175 */ {"var175", "undefined"}, + /* 176 */ {"var176", "undefined"}, + /* 177 */ {"ROOH", "Esters [ppbV]"}, + /* 178 */ {"ETHOH", "Ethanol [ppbV]"}, + /* 179 */ {"METHOH", "Methanol [ppbV]"}, + /* 180 */ {"var180", "undefined"}, + /* 181 */ {"var181", "undefined"}, + /* 182 */ {"var182", "undefined"}, + /* 183 */ {"var183", "undefined"}, + /* 184 */ {"var184", "undefined"}, + /* 185 */ {"var185", "undefined"}, + /* 186 */ {"H2O2", "Hydrogen Peroxide [ppbV]"}, + /* 187 */ {"OH", "Hydroxyl Radical [ppbV]"}, + /* 188 */ {"HO2", "Hydroperoxyl Radical [ppbV]"}, + /* 189 */ {"var189", "undefined"}, + /* 190 */ {"var190", "undefined"}, + /* 191 */ {"var191", "undefined"}, + /* 192 */ {"var192", "undefined"}, + /* 193 */ {"var193", "undefined"}, + /* 194 */ {"var194", "undefined"}, + /* 195 */ {"var195", "undefined"}, + /* 196 */ {"var196", "undefined"}, + /* 197 */ {"var197", "undefined"}, + /* 198 */ {"var198", "undefined"}, + /* 199 */ {"var199", "undefined"}, + /* 200 */ {"ASO4", "Sulfate (SO4) Particulates ≤ 2.5 μm Diameter [μg/m^3]"}, + /* 201 */ {"ANH4", "Ammonia (NH4) Particulates ≤ 2.5 μm Diameter [μg/m^3]"}, + /* 202 */ {"ANO3", "Nitrate (NO3) Particulates ≤ 2.5 μm Diameter [μg/m^3]"}, + /* 203 */ {"AORGA", "Organic Particulates ≤ 2.5 μm Diameter [μg/m^3]"}, + /* 204 */ {"AORGPA", "Primarily Organic Particulates ≤ 2.5 μm Diameter [μg/m^3]"}, + /* 205 */ {"AORGB", "Biogenically Originated Particulates ≤ 2.5 μm Diameter [μg/m^3]"}, + /* 206 */ {"AEC", "Elemental Carbon Particulates ≤ 2.5 μm Diameter [μg/m^3]"}, + /* 207 */ {"A25", "Unspecified Anthropogenic Particulates ≤ 2.5 μm Diameter [μg/m^3]"}, + /* 208 */ {"AH2O", "Water Particulates ≤ 2.5 μm Diameter [μg/m^3]"}, + /* 209 */ {"ANA", "Sodium Particulates ≤ 2.5 μm Diameter [μg/m^3]"}, + /* 210 */ {"ACL", "Chloride Particulates ≤ 2.5 μm Diameter [μg/m^3]"}, + /* 211 */ {"var211", "undefined"}, + /* 212 */ {"var212", "undefined"}, + /* 213 */ {"var213", "undefined"}, + /* 214 */ {"var214", "undefined"}, + /* 215 */ {"var215", "undefined"}, + /* 216 */ {"ASO4K", "Sulfate (SO4) Particulates between 2.5 and 10 μm Diameter [μg/m^3]"}, + /* 217 */ {"ANAK", "Sodium (NA) Particulates between 2.5 and 10 μm Diameter [μg/m^3]"}, + /* 218 */ {"ACLK", "Chloride (CL) Particulates between 2.5 and 10 μm Diameter [μg/m^3]"}, + /* 219 */ {"ASEAS", "Sea Salt Originated Particulates between 2.5 and 10 μm Diameter [μg/m^3]"}, + /* 220 */ {"ASOIL", "Crustal Material Orginated Particulates between 2.5 and 10 μm Diameter [μg/m^3]"}, + /* 221 */ {"ACORS", "Particulates between 2.5 and 10 μm Diameter [μg/m^3]"}, + /* 222 */ {"NUMATKN", "Number Concentration Particulates between 2.5 and 0.1 μm Diameter [number/m^3]"}, + /* 223 */ {"NUMACC", "Number Concentration Particulates between 2.5 and 2.5 μm Diameter [number/m^3]"}, + /* 224 */ {"NUMCOR", "Number Concentration Particulates between 2.5 and 10 μm Diameter [number/m^3]"}, + /* 225 */ {"var225", "undefined"}, + /* 226 */ {"var226", "undefined"}, + /* 227 */ {"var227", "undefined"}, + /* 228 */ {"SRFATKN", "Surface Area Contributed by Particulates ≤ 0.1 μm Diameter [m2/m^3]"}, + /* 229 */ {"SRFACC", "Surface Area Contributed by Particulates between 0.1 and 2.5 μm Diameter [m2/m^3]"}, + /* 230 */ {"var230", "undefined"}, + /* 231 */ {"var231", "undefined"}, + /* 232 */ {"SO2", "Sulfur Dioxide [ppbV]"}, + /* 233 */ {"MSA", "Methanesulfonic Acid [Kg/Kg]"}, + /* 234 */ {"TSO4", "Total Sulfate Particulates (Fine ands Coarse) [μg/m^3]"}, + /* 235 */ {"DMS", "Dimethylsulfide [Kg/Kg]"}, + /* 236 */ {"var236", "undefined"}, + /* 237 */ {"var237", "undefined"}, + /* 238 */ {"var238", "undefined"}, + /* 239 */ {"var239", "undefined"}, + /* 240 */ {"DU1", "Dust Particulates between 0.2 - 2.0 μm Diameter [Kg/Kg]"}, + /* 241 */ {"DU2", "Dust Particulates between 2.0 - 3.6 μm Diameter [Kg/Kg]"}, + /* 242 */ {"DU3", "Dust Particulates between 3.6 - 6.0 μm Diameter [Kg/Kg]"}, + /* 243 */ {"DU4", "Dust Particulates between 6.0 - 12.0 μm Diameter [Kg/Kg]"}, + /* 244 */ {"DU5", "Dust Particulates between 12.0 - 20.0 μm Diameter [Kg/Kg]"}, + /* 245 */ {"SS1", "Sea Salt Particulates between 0.2 - 1.0 μm Diameter [Kg/Kg]"}, + /* 246 */ {"SS2", "Sea Salt Particulates between 1.0 - 3.0 μm Diameter [Kg/Kg]"}, + /* 247 */ {"SS3", "Sea Salt Particulates between 3.0 - 10.0 μm Diameter [Kg/Kg]"}, + /* 248 */ {"SS4", "Sea Salt Particulates between 10.0 - 20.0 μm Diameter [Kg/Kg]"}, + /* 249 */ {"OCDRY", "Hydrophobic Organic Carbon [Kg/Kg]"}, + /* 250 */ {"OCWET", "Hydrophilic Organic Carbon [Kg/Kg]"}, + /* 251 */ {"BCDRY", "Hydrophobic Black Carbon [Kg/Kg]"}, + /* 252 */ {"BCWET", "Hydrophilic Black Carbon [Kg/Kg]"}, + /* 253 */ {"var253", "undefined"}, + /* 254 */ {"var254", "undefined"}, + /* 255 */ {"var255", "undefined"}, +}; + +const struct ParmTable parm_table_mdl_nceptab[256] = { + /* 0 */ {"var0", "undefined"}, + /* 1 */ {"PRES", "Pressure [Pa]"}, + /* 2 */ {"PRMSL", "Pressure reduced to MSL [Pa]"}, + /* 3 */ {"PTEND", "Pressure tendency [Pa/s]"}, + /* 4 */ {"PVORT", "Pot. vorticity [km^2/kg/s]"}, + /* 5 */ {"ICAHT", "ICAO Standard Atmosphere Reference Height [M]"}, + /* 6 */ {"GP", "Geopotential [m^2/s^2]"}, + /* 7 */ {"HGT", "Geopotential height [gpm]"}, + /* 8 */ {"DIST", "Geometric height [m]"}, + /* 9 */ {"HSTDV", "Std dev of height [m]"}, + /* 10 */ {"TOZNE", "Total ozone [Dobson]"}, + /* 11 */ {"TMP", "Temp. [K]"}, + /* 12 */ {"VTMP", "Virtual temp. [K]"}, + /* 13 */ {"POT", "Potential temp. [K]"}, + /* 14 */ {"EPOT", "Pseudo-adiabatic pot. temp. [K]"}, + /* 15 */ {"TMAX", "Max. temp. [K]"}, + /* 16 */ {"TMIN", "Min. temp. [K]"}, + /* 17 */ {"DPT", "Dew point temp. [K]"}, + /* 18 */ {"DEPR", "Dew point depression [K]"}, + /* 19 */ {"LAPR", "Lapse rate [K/m]"}, + /* 20 */ {"VIS", "Visibility [m]"}, + /* 21 */ {"RDSP1", "Radar spectra (1) [non-dim]"}, + /* 22 */ {"RDSP2", "Radar spectra (2) [non-dim]"}, + /* 23 */ {"RDSP3", "Radar spectra (3) [non-dim]"}, + /* 24 */ {"PLI", "Parcel lifted index (to 500 hPa) [K]"}, + /* 25 */ {"TMPA", "Temp. anomaly [K]"}, + /* 26 */ {"PRESA", "Pressure anomaly [Pa]"}, + /* 27 */ {"GPA", "Geopotential height anomaly [gpm]"}, + /* 28 */ {"WVSP1", "Wave spectra (1) [non-dim]"}, + /* 29 */ {"WVSP2", "Wave spectra (2) [non-dim]"}, + /* 30 */ {"WVSP3", "Wave spectra (3) [non-dim]"}, + /* 31 */ {"WDIR", "Wind direction [deg]"}, + /* 32 */ {"WIND", "Wind speed [m/s]"}, + /* 33 */ {"UGRD", "u wind [m/s]"}, + /* 34 */ {"VGRD", "v wind [m/s]"}, + /* 35 */ {"STRM", "Stream function [m^2/s]"}, + /* 36 */ {"VPOT", "Velocity potential [m^2/s]"}, + /* 37 */ {"MNTSF", "Montgomery stream function [m^2/s^2]"}, + /* 38 */ {"SGCVV", "Sigma coord. vertical velocity [/s]"}, + /* 39 */ {"VVEL", "Pressure vertical velocity [Pa/s]"}, + /* 40 */ {"DZDT", "Geometric vertical velocity [m/s]"}, + /* 41 */ {"ABSV", "Absolute vorticity [/s]"}, + /* 42 */ {"ABSD", "Absolute divergence [/s]"}, + /* 43 */ {"RELV", "Relative vorticity [/s]"}, + /* 44 */ {"RELD", "Relative divergence [/s]"}, + /* 45 */ {"VUCSH", "Vertical u shear [/s]"}, + /* 46 */ {"VVCSH", "Vertical v shear [/s]"}, + /* 47 */ {"DIRC", "Direction of current [deg]"}, + /* 48 */ {"SPC", "Speed of current [m/s]"}, + /* 49 */ {"UOGRD", "u of current [m/s]"}, + /* 50 */ {"VOGRD", "v of current [m/s]"}, + /* 51 */ {"SPFH", "Specific humidity [kg/kg]"}, + /* 52 */ {"RH", "Relative humidity [%]"}, + /* 53 */ {"MIXR", "Humidity mixing ratio [kg/kg]"}, + /* 54 */ {"PWAT", "Precipitable water [kg/m^2]"}, + /* 55 */ {"VAPP", "Vapor pressure [Pa]"}, + /* 56 */ {"SATD", "Saturation deficit [Pa]"}, + /* 57 */ {"EVP", "Evaporation [kg/m^2]"}, + /* 58 */ {"CICE", "Cloud Ice [kg/m^2]"}, + /* 59 */ {"PRATE", "Precipitation rate [kg/m^2/s]"}, + /* 60 */ {"TSTM", "Thunderstorm probability [%]"}, + /* 61 */ {"APCP", "Total precipitation [kg/m^2]"}, + /* 62 */ {"NCPCP", "Large scale precipitation [kg/m^2]"}, + /* 63 */ {"ACPCP", "Convective precipitation [kg/m^2]"}, + /* 64 */ {"SRWEQ", "Snowfall rate water equiv. [kg/m^2/s]"}, + /* 65 */ {"WEASD", "Accum. snow [kg/m^2]"}, + /* 66 */ {"SNOD", "Snow depth [m]"}, + /* 67 */ {"MIXHT", "Mixed layer depth [m]"}, + /* 68 */ {"TTHDP", "Transient thermocline depth [m]"}, + /* 69 */ {"MTHD", "Main thermocline depth [m]"}, + /* 70 */ {"MTHA", "Main thermocline anomaly [m]"}, + /* 71 */ {"TCDC", "Total cloud cover [%]"}, + /* 72 */ {"CDCON", "Convective cloud cover [%]"}, + /* 73 */ {"LCDC", "Low level cloud cover [%]"}, + /* 74 */ {"MCDC", "Mid level cloud cover [%]"}, + /* 75 */ {"HCDC", "High level cloud cover [%]"}, + /* 76 */ {"CWAT", "Cloud water [kg/m^2]"}, + /* 77 */ {"BLI", "Best lifted index (to 500 hPa) [K]"}, + /* 78 */ {"SNOC", "Convective snow [kg/m^2]"}, + /* 79 */ {"SNOL", "Large scale snow [kg/m^2]"}, + /* 80 */ {"WTMP", "Water temp. [K]"}, + /* 81 */ {"LAND", "Land cover (land=1;sea=0) [fraction]"}, + /* 82 */ {"DSLM", "Deviation of sea level from mean [m]"}, + /* 83 */ {"SFCR", "Surface roughness [m]"}, + /* 84 */ {"ALBDO", "Albedo [%]"}, + /* 85 */ {"TSOIL", "Soil temp. [K]"}, + /* 86 */ {"SOILM", "Soil moisture content [kg/m^2]"}, + /* 87 */ {"VEG", "Vegetation [%]"}, + /* 88 */ {"SALTY", "Salinity [kg/kg]"}, + /* 89 */ {"DEN", "Density [kg/m^3]"}, + /* 90 */ {"WATR", "Water runoff [kg/m^2]"}, + /* 91 */ {"ICEC", "Ice concentration (ice=1;no ice=0) [fraction]"}, + /* 92 */ {"ICETK", "Ice thickness [m]"}, + /* 93 */ {"DICED", "Direction of ice drift [deg]"}, + /* 94 */ {"SICED", "Speed of ice drift [m/s]"}, + /* 95 */ {"UICE", "u of ice drift [m/s]"}, + /* 96 */ {"VICE", "v of ice drift [m/s]"}, + /* 97 */ {"ICEG", "Ice growth rate [m/s]"}, + /* 98 */ {"ICED", "Ice divergence [/s]"}, + /* 99 */ {"SNOM", "Snow melt [kg/m^2]"}, + /* 100 */ {"HTSGW", "Sig height of wind waves and swell [m]"}, + /* 101 */ {"WVDIR", "Direction of wind waves [deg]"}, + /* 102 */ {"WVHGT", "Sig height of wind waves [m]"}, + /* 103 */ {"WVPER", "Mean period of wind waves [s]"}, + /* 104 */ {"SWDIR", "Direction of swell waves [deg]"}, + /* 105 */ {"SWELL", "Sig height of swell waves [m]"}, + /* 106 */ {"SWPER", "Mean period of swell waves [s]"}, + /* 107 */ {"DIRPW", "Primary wave direction [deg]"}, + /* 108 */ {"PERPW", "Primary wave mean period [s]"}, + /* 109 */ {"DIRSW", "Secondary wave direction [deg]"}, + /* 110 */ {"PERSW", "Secondary wave mean period [s]"}, + /* 111 */ {"NSWRS", "Net short wave (surface) [W/m^2]"}, + /* 112 */ {"NLWRS", "Net long wave (surface) [W/m^2]"}, + /* 113 */ {"NSWRT", "Net short wave (top) [W/m^2]"}, + /* 114 */ {"NLWRT", "Net long wave (top) [W/m^2]"}, + /* 115 */ {"LWAVR", "Long wave [W/m^2]"}, + /* 116 */ {"SWAVR", "Short wave [W/m^2]"}, + /* 117 */ {"GRAD", "Global radiation [W/m^2]"}, + /* 118 */ {"BRTMP", "Brightness temperature [K]"}, + /* 119 */ {"LWRAD", "Radiance with respect to wave no. [W/m/sr]"}, + /* 120 */ {"SWRAD", "Radiance with respect ot wave len. [W/m^3/sr]"}, + /* 121 */ {"LHTFL", "Latent heat flux [W/m^2]"}, + /* 122 */ {"SHTFL", "Sensible heat flux [W/m^2]"}, + /* 123 */ {"BLYDP", "Boundary layer dissipation [W/m^2]"}, + /* 124 */ {"UFLX", "Zonal momentum flux [N/m^2]"}, + /* 125 */ {"VFLX", "Meridional momentum flux [N/m^2]"}, + /* 126 */ {"WMIXE", "Wind mixing energy [J]"}, + /* 127 */ {"IMGD", "Image data []"}, + /* 128 */ {"TMPF", "TEMPERATURE (Fahrenheit) [F]"}, + /* 129 */ {"MAXK", "DAYTIME MAX TEMP (MAX) (Kelvin) [K]"}, + /* 130 */ {"MAXF", "DAYTIME MAX TEMP (MAX) (deg F) [F]"}, + /* 131 */ {"NMAXK", "NORMAL MAX TEMPERATURE (Kelvin) [K]"}, + /* 132 */ {"NMAXF", "NORMAL MAX TEMPERATURE (deg F) [F]"}, + /* 133 */ {"DMAXK", "DEPARTURE FROM NORMAL MAX (K) [K]"}, + /* 134 */ {"DMAXF", "DEPARTURE FROM NORMAL MAX (deg F) [F]"}, + /* 135 */ {"MINK", "NIGHTTIME MIN TEMP (MIN) (Kelvin) [K]"}, + /* 136 */ {"MINF", "NIGHTTIME MIN TEMP (MIN) (deg F) [F]"}, + /* 137 */ {"NMINK", "NORMAL MIN TEMPERATURE (Kelvin) [K]"}, + /* 138 */ {"NMINF", "NORMAL NIGHTTIME MIN TEMP (deg F) [F]"}, + /* 139 */ {"DMINK", "DEPARTURE FROM NORMAL MIN (K) [K]"}, + /* 140 */ {"DMINF", "DEPARTURE FROM NORMAL MIN (deg F) [F]"}, + /* 141 */ {"DWPF", "DEW POINT TEMPERATURE (deg F) [F]"}, + /* 142 */ {"DPDF", "DEW POINT DEPRESSION (deg F) [F]"}, + /* 143 */ {"HTINF", "HEAT INDEX (deg F) [F]"}, + /* 144 */ {"WNCHF", "WIND CHILL (deg F) [F]"}, + /* 145 */ {"var145", "undefined"}, + /* 146 */ {"POP", "PROB OF 0.01 IN. OF PRECIP (PoP) [%]"}, + /* 147 */ {"PQPF2", "PROB OF QPF >= 0.10 INCHES [%]"}, + /* 148 */ {"PQPF3", "PROB OF QPF >= 0.25 INCHES [%]"}, + /* 149 */ {"PQPF4", "PROB OF QPF >= 0.50 INCHES [%]"}, + /* 150 */ {"PQPF5", "PROB OF QPF >= 1.00 INCHES [%]"}, + /* 151 */ {"PQPF6", "PROB OF QPF >= 2.00 INCHES [%]"}, + /* 152 */ {"PQPF7", "PROB OF QPF >= 3.00 INCHES FUTURE [%]"}, + /* 153 */ {"BQPF", "BEST CATEGORY OF QPF [num]"}, + /* 154 */ {"NPOP", "NML REL. FREQ. OF 0.01 IN OF PCP [%]"}, + /* 155 */ {"DPOP", "DEPARTURE FROM NML OF 0.01 POP [%]"}, + /* 156 */ {"PCPM", "EXPECTED VALUE OF PRECIPITATION [mm]"}, + /* 157 */ {"PCPI", "EXPECTED VALUE OF PRECIPITATION [in]"}, + /* 158 */ {"CPCPM", "CONDITIONAL EXPECTED PRECIP AMT [mm]"}, + /* 159 */ {"CPCPI", "CONDITIONAL EXPECTED PRECIP AMT [in]"}, + /* 160 */ {"PSNA1", "PROB OF SNOW AMOUNT >= 0.10 [%]"}, + /* 161 */ {"PSNA2", "PROB OF SNOW AMOUNT >= 2 INCHES [%]"}, + /* 162 */ {"PSNA3", "PROB OF SNOW AMOUNT >= 4 INCHES [%]"}, + /* 163 */ {"PSNA4", "PROB OF SNOW AMOUNT >= 6 INCHES [%]"}, + /* 164 */ {"PSNA5", "PROB OF SNOW AMOUNT >= 8 INCHES [%]"}, + /* 165 */ {"BSNA", "BEST CATEGORY FOR SNOW AMOUNT [num]"}, + /* 166 */ {"SNWM", "EXPECTED VALUE OF SNOW AMOUNT [mm]"}, + /* 167 */ {"SNWI", "EXPECTED VALUE OF SNOW AMOUNT [in]"}, + /* 168 */ {"MWSPK", "INFLATED MAX WIND SPEED (knots) [kts]"}, + /* 169 */ {"IWSPM", "INFLATED WIND SPEED (meter/sec) [m/s]"}, + /* 170 */ {"SKNT", "INFLATED WIND SPEED (knots) [kts]"}, + /* 171 */ {"PWSP1", "PROB OF MAX WIND SPEED 0-12 kts [%]"}, + /* 172 */ {"PWSP2", "PROB OF MAX WIND SPEED 13-21 kts [%]"}, + /* 173 */ {"PWSP3", "PROB OF MAX WIND SPEED 22-31 kts [%]"}, + /* 174 */ {"PWSP4", "PROB OF MAX WIND SPEED >=32 kts [%]"}, + /* 175 */ {"WSPDC", "CATEGORICAL MAX WIND SPEED [num]"}, + /* 176 */ {"XSPDM", "EXPECTED VALUE OF MAX WIND SPEED [m/s]"}, + /* 177 */ {"XSPDK", "EXPECTED VALUE OF MAX WIND SPEED [kts]"}, + /* 178 */ {"PWDRN", "PROB OF WIND DIRECTION NORTH [%]"}, + /* 179 */ {"PWDRNE", "PROB OF WIND DIRECTION NORTHEAST [%]"}, + /* 180 */ {"PWDRE", "PROB OF WIND DIRECTION EAST [%]"}, + /* 181 */ {"PWDRSE", "PROB OF WIND DIRECTION SOUTHEAST [%]"}, + /* 182 */ {"PWDRS", "PROB OF WIND DIRECTION SOUTH [%]"}, + /* 183 */ {"PWDRSW", "PROB OF WIND DIRECTION SOUTHWEST [%]"}, + /* 184 */ {"PWDRW", "PROB OF WIND DIRECTION WEST [%]"}, + /* 185 */ {"PWDRNW", "PROB OF WIND DIRECTION NORTHWEST [%]"}, + /* 186 */ {"WDIRC", "CATEGORICAL WIND DIRECTION [num]"}, + /* 187 */ {"var187", "undefined"}, + /* 188 */ {"PSKCL", "PROB OF TOTAL SKY"}, + /* 189 */ {"PSKFW", "PROB OF TOTAL SKY"}, + /* 190 */ {"PSKSC", "PROB OF TOTAL SKY"}, + /* 191 */ {"PSKBK", "PROB OF TOTAL SKY"}, + /* 192 */ {"PSKOV", "PROB OF TOTAL SKY"}, + /* 193 */ {"SKYC", "CATEGORICAL TOTAL SKY COVER [num]"}, + /* 194 */ {"MSKCL", "PROB MEAN SKY CVR"}, + /* 195 */ {"MSKOV", "PROB MEAN SKY CVR"}, + /* 196 */ {"MSKMC", "PROB MEAN SKY CVR"}, + /* 197 */ {"MSKPC", "PROB MEAN SKY CVR"}, + /* 198 */ {"MSKMO", "PROB MEAN SKY CVR"}, + /* 199 */ {"MSKYC", "CATEGORICAL MEAN SKY COVER [num]"}, + /* 200 */ {"PCIG1", "PROB OF CIG HGT < 200 FT [%]"}, + /* 201 */ {"PCIG2", "PROB OF CIG HGT 200-400 FT [%]"}, + /* 202 */ {"PCIG3", "PROB OF CIG HGT 500-900 FT [%]"}, + /* 203 */ {"PCIG4", "PROB OF CIG HGT 1000-3000 FT [%]"}, + /* 204 */ {"PCIG5", "PROB OF CIG HGT 3100-6500 FT [%]"}, + /* 205 */ {"PCIG6", "PROB OF CIG HGT 6600-12000 FT [%]"}, + /* 206 */ {"PCIG7", "PROB OF CIG HGT > 12000 FT [%]"}, + /* 207 */ {"BCIG", "BEST CATEGORY OF CEILING HEIGHT [num]"}, + /* 208 */ {"PVIS1", "PROB OF VIS <=1/4 MILE [%]"}, + /* 209 */ {"PVIS2", "PROB OF VIS <=1/2 MILE [%]"}, + /* 210 */ {"PVIS3", "PROB OF VIS <=7/8 MILE [%]"}, + /* 211 */ {"PVIS4", "PROB OF VIS <=2 3/4 MILES [%]"}, + /* 212 */ {"PVIS5", "PROB OF VIS <=5 MILES [%]"}, + /* 213 */ {"PVIS6", "PROB OF VIS <=6 MILES [%]"}, + /* 214 */ {"VISC", "CATEGORICAL VISIBILITY [num]"}, + /* 215 */ {"POBVN", "PROB OF OBSTRUCTION TO VIS"}, + /* 216 */ {"POBVH", "PROB OF OBSTRUCTION TO VIS"}, + /* 217 */ {"POBVM", "PROB OF OBSTRUCTION TO VIS"}, + /* 218 */ {"POBVF", "PROB OF OBSTRUCTION TO VIS"}, + /* 219 */ {"POVBL", "PROB OF BLOWING OBVIS [%]"}, + /* 220 */ {"OBVC", "BEST CATEGORY OF OBVIS [num]"}, + /* 221 */ {"var221", "undefined"}, + /* 222 */ {"NTSM", "NORMAL PROB OF THUNDERSTORMS [%]"}, + /* 223 */ {"CSVR", "COND PROB OF SEVERE WEATHER [%]"}, + /* 224 */ {"USVR", "UNCOND PROB OF SEVERE WX [%]"}, + /* 225 */ {"NSVR", "NORMAL PROB OF SEVERE WX [%]"}, + /* 226 */ {"UHAI", "UNCONDITIONAL PROB OF HAIL [%]"}, + /* 227 */ {"UTOR", "UNCONDITIONAL PROB OF TORNADO [%]"}, + /* 228 */ {"UTSW", "UNCOND PROB OF DAMAGING WIND [%]"}, + /* 229 */ {"CFZI", "COND PROB FRZING PRECIP (INSTANT) [%]"}, + /* 230 */ {"UFZI", "UNCND PROB FRZING PRECIP (INSTNT) [%]"}, + /* 231 */ {"CZNI", "COND PROB FROZEN PRECIP (INSTANT) [%]"}, + /* 232 */ {"UZNI", "UNCND PROB FROZEN PRECIP (INSTNT) [%]"}, + /* 233 */ {"CLQI", "COND PROB LIQUID PRECIP (INSTANT) [%]"}, + /* 234 */ {"ULQI", "UNCND PROB LIQUID PRECIP (INSTNT) [%]"}, + /* 235 */ {"PTYPI", "CATEGORICAL PRECIP TYPE (INSTANT) [num]"}, + /* 236 */ {"CPOZP", "COND PROB OF FRZING PRECIP [%]"}, + /* 237 */ {"UPOZP", "UNCOND PROB OF FRZING PRECIP [%]"}, + /* 238 */ {"CPOS", "COND PROB OF SNOW (CPoS) [%]"}, + /* 239 */ {"UPOS", "UNCOND PROB OF SNOW (CPoS) [%]"}, + /* 240 */ {"CPORS", "COND PROB OF RAIN/SNOW MIXED [%]"}, + /* 241 */ {"UPORS", "UNCOND PROB OF RAIN/SNOW MIXED [%]"}, + /* 242 */ {"CPORA", "COND PROB OF RAIN [%]"}, + /* 243 */ {"var243", "undefined"}, + /* 244 */ {"BPCPT", "BEST CATEGORY OF PRECIP TYPE [num]"}, + /* 245 */ {"POPOH", "POPO PRECIP OCCURRING AT AN HOUR [%]"}, + /* 246 */ {"POPOP", "POPO PRECIP DURING A PERIOD [%]"}, + /* 247 */ {"CPDRZ", "COND PROB OF DRIZZLE [%]"}, + /* 248 */ {"CPSTY", "COND PROB OF CONT (STEADY) PRECIP [%]"}, + /* 249 */ {"CPSHW", "COND PROB OF SHOWERS [%]"}, + /* 250 */ {"BPCHR", "BEST CAT PRECIP CHARACTERISTIC [num]"}, + /* 251 */ {"SUNSH", "PERCENT OF POSSIBLE SUNSHINE [%]"}, + /* 252 */ {"HRSUN", "HOURS OF SUNSHINE [hrs]"}, + /* 253 */ {"SCQP", "SCAN 0-3H CATEGORICAL QPF [num]"}, + /* 254 */ {"SCTS", "SCAN 0-3H C-G LIGHTNING PROB [%]"}, + /* 255 */ {"var255", "undefined"}, }; /* - * EC_ext v1.0 wesley ebisuzaki + * EC_ext v1.0 wesley ebisuzaki * * prints something readable from the EC stream parameter * @@ -10828,81 +10827,84 @@ void EC_ext(unsigned char *pds, char *prefix, char *suffix, int verbose) { if (verbose == 2) printf("%sECext=%d%s", prefix, local_id, suffix); if (verbose == 2) { - switch(ec_class) { - case 1: strcpy(string, "operations"); break; - case 2: strcpy(string, "research"); break; - case 3: strcpy(string, "ERA-15"); break; - case 4: strcpy(string, "Euro clim support network"); break; - case 5: strcpy(string, "ERA-40"); break; - case 6: strcpy(string, "DEMETER"); break; - case 7: strcpy(string, "PROVOST"); break; - case 8: strcpy(string, "ELDAS"); break; - default: sprintf(string, "%d", ec_class); break; - } + switch(ec_class) { + case 1: strcpy(string, "operations"); break; + case 2: strcpy(string, "research"); break; + case 3: strcpy(string, "ERA-15"); break; + case 4: strcpy(string, "Euro clim support network"); break; + case 5: strcpy(string, "ERA-40"); break; + case 6: strcpy(string, "DEMETER"); break; + case 7: strcpy(string, "PROVOST"); break; + case 8: strcpy(string, "ELDAS"); break; + default: sprintf(string, "%d", ec_class); break; + } printf("%sclass=%s%s",prefix,string,suffix); } /* - 10/03/2000: R.Rudsar : subroutine changed. - Tests for EcType and extra test for EcStream 1035 + 10/03/2000: R.Rudsar : subroutine changed. + Tests for EcType and extra test for EcStream 1035 */ /* if (verbose == 2) { */ - switch(ec_type) { - case 1: strcpy(string, "first guess"); break; - case 2: strcpy(string, "analysis"); break; - case 3: strcpy(string, "init analysis"); break; - case 4: strcpy(string, "OI analysis"); break; - /* case 10: strcpy(string, "Control forecast"); break; */ - case 10: sprintf(string, "Control forecast %d",PDS_EcFcstNo(pds)); - break; - case 11: - if (ec_stream == 1035 || ec_stream == 1033) - sprintf(string, "Perturbed forecast %d", - PDS_EcFcstNo(pds)); - else - strcpy(string, "Perturbed forecasts"); break; - break; - case 14: strcpy(string, "Cluster means"); break; - case 15: strcpy(string, "Cluster std. dev."); break; - case 16: strcpy(string, "Forecast probability"); break; - case 17: strcpy(string, "Ensemble means"); break; - case 18: strcpy(string, "Ensemble std. dev."); break; - case 20: strcpy(string, "Climatology"); break; - case 21: strcpy(string, "Climatology simulation"); break; - case 80: strcpy(string, "Fcst seasonal mean"); break; - default: sprintf(string, "%d", ec_type); break; - } - printf("%stype=%s%s",prefix,string,suffix); + switch(ec_type) { + case 1: strcpy(string, "first guess"); break; + case 2: strcpy(string, "analysis"); break; + case 3: strcpy(string, "init analysis"); break; + case 4: strcpy(string, "OI analysis"); break; + /* case 10: strcpy(string, "Control forecast"); break; */ + case 10: sprintf(string, "Control forecast %d",PDS_EcFcstNo(pds)); + break; + case 11: + /* 5/23/2023 added ec_stream == 1122, thanks S. Villaume (ECMWF) **/ + /* 6/2023 added ec_stream 1120 */ + /* 9/2023 added ec_stream 1081 */ + if (ec_stream == 1035 || ec_stream == 1033 || ec_stream == 1122 || ec_stream == 1120 || ec_stream == 1081) + sprintf(string, "Perturbed forecast %d", + PDS_EcFcstNo(pds)); + else + strcpy(string, "Perturbed forecasts"); break; + break; + case 14: strcpy(string, "Cluster means"); break; + case 15: strcpy(string, "Cluster std. dev."); break; + case 16: strcpy(string, "Forecast probability"); break; + case 17: strcpy(string, "Ensemble means"); break; + case 18: strcpy(string, "Ensemble std. dev."); break; + case 20: strcpy(string, "Climatology"); break; + case 21: strcpy(string, "Climatology simulation"); break; + case 80: strcpy(string, "Fcst seasonal mean"); break; + default: sprintf(string, "%d", ec_type); break; + } + printf("%stype=%s%s",prefix,string,suffix); /* } */ if (verbose == 2) { switch(ec_stream) { - case 1033: strcpy(string, "ensemble hindcasts"); break; - case 1035: strcpy(string, "ensemble forecasts"); break; - case 1043: strcpy(string, "mon mean"); break; - case 1070: strcpy(string, "mon (co)var"); break; - case 1071: strcpy(string, "mon mean from daily"); break; - case 1090: strcpy(string, "EC ensemble fcsts"); break; - case 1091: strcpy(string, "EC seasonal fcst mon means"); break; - default: sprintf(string, "%d", ec_stream); break; + case 1033: strcpy(string, "ensemble hindcasts"); break; + case 1035: strcpy(string, "ensemble forecasts"); break; + case 1043: strcpy(string, "mon mean"); break; + case 1070: strcpy(string, "mon (co)var"); break; + case 1071: strcpy(string, "mon mean from daily"); break; + case 1090: strcpy(string, "EC ensemble fcsts"); break; + case 1091: strcpy(string, "EC seasonal fcst mon means"); break; + default: sprintf(string, "%d", ec_stream); break; } printf("%sstream=%s%s",prefix,string,suffix); } if (verbose == 2) { printf("%sVersion=%c%c%c%c%s", prefix, *(PDS_Ec16Version(pds)), *(PDS_Ec16Version(pds)+1), - *(PDS_Ec16Version(pds)+2), *(PDS_Ec16Version(pds)+3), suffix); + *(PDS_Ec16Version(pds)+2), *(PDS_Ec16Version(pds)+3), suffix); if (local_id == 16) { - printf("%sSysVersion=%d%s", prefix, PDS_Ec16SysNum(pds), suffix); - printf("%sAvgPeriod=%d%s", prefix, PDS_Ec16AvePeriod(pds), suffix); - printf("%sFcstMon=%d%s", prefix, PDS_Ec16FcstMon(pds), suffix); + printf("%sSysVersion=%d%s", prefix, PDS_Ec16SysNum(pds), suffix); + printf("%sAvgPeriod=%d%s", prefix, PDS_Ec16AvePeriod(pds), suffix); + printf("%sFcstMon=%d%s", prefix, PDS_Ec16FcstMon(pds), suffix); } } - if (local_id == 16) { - printf("%sEnsem_mem=%d%s", prefix, PDS_Ec16Number(pds), suffix); - printf("%sVerfDate=%d%s", prefix, PDS_Ec16VerfMon(pds), suffix); - } + if (local_id == 16) { + printf("%sEnsem_mem=%d%s", prefix, PDS_Ec16Number(pds), suffix); + printf("%sVerfDate=%d%s", prefix, PDS_Ec16VerfMon(pds), suffix); + } } @@ -10910,13 +10912,13 @@ void EC_ext(unsigned char *pds, char *prefix, char *suffix, int verbose) { * get grid size from GDS * * added calculation of nxny of spectral data and clean up of triangular - * grid nnxny calculation l. kornblueh + * grid nnxny calculation l. kornblueh * 7/25/03 wind fix Dusan Jovic * 9/17/03 fix scan mode */ extern int ec_large_grib, len_ec_bds; -int GDS_grid(unsigned char *gds, unsigned char *bds, int *nx, int *ny, +int GDS_grid(unsigned char *gds, unsigned char *bds, int *nx, int *ny, long int *nxny) { int i, d, ix, iy, pl; @@ -10929,39 +10931,39 @@ int GDS_grid(unsigned char *gds, unsigned char *bds, int *nx, int *ny, /* thin grid */ if (GDS_Gaussian(gds) || GDS_LatLon(gds)) { - if (ix == 65535) { - *nx = -1; - /* reduced grid */ - isum = 0; - pl = GDS_PL(gds); - for (i = 0; i < iy; i++) { - isum += gds[pl+i*2]*256 + gds[pl+i*2+1]; - } - *nxny = isum; - } - return 0; + if (ix == 65535) { + *nx = -1; + /* reduced grid */ + isum = 0; + pl = GDS_PL(gds); + for (i = 0; i < iy; i++) { + isum += gds[pl+i*2]*256 + gds[pl+i*2+1]; + } + *nxny = isum; + } + return 0; } if (GDS_Triangular(gds)) { i = GDS_Triangular_ni(gds); d = GDS_Triangular_nd(gds); - *nx = *nxny = d * (i + 1) * (i + 1); + *nx = *nxny = d * (i + 1) * (i + 1); *ny = 1; - return 0; + return 0; } if (GDS_Harmonic(gds)) { - if (BDS_ComplexPacking(bds)) { - *nx = BDS_NValues(bds); - *ny = -1; - } - else { - /* this code assumes j, k, m are consistent with bds */ + if (BDS_ComplexPacking(bds)) { + *nx = BDS_NValues(bds); + *ny = -1; + } + else { + /* this code assumes j, k, m are consistent with bds */ *nx = *nxny = (8*(BDS_LEN(bds)-15)-BDS_UnusedBits(bds))/ - BDS_NumBits(bds)+1; + BDS_NumBits(bds)+1; if ((8*(BDS_LEN(bds)-15)-BDS_UnusedBits(bds)) % BDS_NumBits(bds)) { - fprintf(stderr,"inconsistent harmonic BDS\n"); + fprintf(stderr,"inconsistent harmonic BDS\n"); } *ny = 1; - } + } } return 0; } @@ -10975,17 +10977,17 @@ void GDS_prt_thin_lon(unsigned char *gds) { iy = GDS_LatLon_ny(gds); if ((pl = GDS_PL(gds)) == -1) { - fprintf(stderr,"\nprogram error: GDS_prt_thin\n"); - return; + fprintf(stderr,"\nprogram error: GDS_prt_thin\n"); + return; } for (col = i = 0; i < iy; i++) { - if (col == 0) printf(" "); - printf("%5d", (gds[pl+i*2] << 8) + gds[pl+i*2+1]); - col++; - if (col == NCOL) { - col = 0; - printf("\n"); - } + if (col == 0) printf(" "); + printf("%5d", (gds[pl+i*2] << 8) + gds[pl+i*2+1]); + col++; + if (col == NCOL) { + col = 0; + printf("\n"); + } } if (col != 0) printf("\n"); } @@ -10995,17 +10997,17 @@ void GDS_prt_thin_lon(unsigned char *gds) { */ static char *scan_mode[8] = { - "WE:NS", - "NS:WE", + "WE:NS", + "NS:WE", - "WE:SN", - "SN:WE", + "WE:SN", + "SN:WE", - "EW:NS", - "NS:EW", + "EW:NS", + "NS:EW", - "EW:SN", - "SN:EW" }; + "EW:SN", + "SN:EW" }; void GDS_winds(unsigned char *gds, int verbose) { @@ -11013,62 +11015,62 @@ void GDS_winds(unsigned char *gds, int verbose) { if (gds != NULL) { if (GDS_LatLon(gds)) { - scan = GDS_LatLon_scan(gds); - mode = GDS_LatLon_mode(gds); - } - else if (GDS_Mercator(gds)) { - scan =GDS_Merc_scan(gds); - mode =GDS_Merc_mode(gds); - } - /* else if (GDS_Gnomonic(gds)) { */ - else if (GDS_Lambert(gds)) { - scan = GDS_Lambert_scan(gds); - mode = GDS_Lambert_mode(gds); - } - else if (GDS_Gaussian(gds)) { - scan = GDS_LatLon_scan(gds); - mode = GDS_LatLon_mode(gds); - } - else if (GDS_Polar(gds)) { - scan = GDS_Polar_scan(gds); - mode = GDS_Polar_mode(gds); - } - else if (GDS_RotLL(gds)) { - scan = GDS_RotLL_scan(gds); - mode = GDS_RotLL_mode(gds); - } - /* else if (GDS_Triangular(gds)) { */ - else if (GDS_ssEgrid(gds)) { - scan = GDS_ssEgrid_scan(gds); - mode = GDS_ssEgrid_mode(gds); - } - else if (GDS_fEgrid(gds)) { - scan = GDS_fEgrid_scan(gds); - mode = GDS_fEgrid_mode(gds); - } - else if (GDS_ss2dEgrid(gds)) { - scan = GDS_ss2dEgrid_scan(gds); - mode = GDS_ss2dEgrid_mode(gds); - } + scan = GDS_LatLon_scan(gds); + mode = GDS_LatLon_mode(gds); + } + else if (GDS_Mercator(gds)) { + scan =GDS_Merc_scan(gds); + mode =GDS_Merc_mode(gds); + } + /* else if (GDS_Gnomonic(gds)) { */ + else if (GDS_Lambert(gds)) { + scan = GDS_Lambert_scan(gds); + mode = GDS_Lambert_mode(gds); + } + else if (GDS_Gaussian(gds)) { + scan = GDS_LatLon_scan(gds); + mode = GDS_LatLon_mode(gds); + } + else if (GDS_Polar(gds)) { + scan = GDS_Polar_scan(gds); + mode = GDS_Polar_mode(gds); + } + else if (GDS_RotLL(gds)) { + scan = GDS_RotLL_scan(gds); + mode = GDS_RotLL_mode(gds); + } + /* else if (GDS_Triangular(gds)) { */ + else if (GDS_ssEgrid(gds)) { + scan = GDS_ssEgrid_scan(gds); + mode = GDS_ssEgrid_mode(gds); + } + else if (GDS_fEgrid(gds)) { + scan = GDS_fEgrid_scan(gds); + mode = GDS_fEgrid_mode(gds); + } + else if (GDS_ss2dEgrid(gds)) { + scan = GDS_ss2dEgrid_scan(gds); + mode = GDS_ss2dEgrid_mode(gds); + } else if (GDS_ss2dBgrid(gds)) { - scan = GDS_ss2dBgrid_scan(gds); - mode = GDS_ss2dBgrid_mode(gds); - } + scan = GDS_ss2dBgrid_scan(gds); + mode = GDS_ss2dBgrid_mode(gds); + } } if (verbose == 1) { - if (mode != -1) { - if (mode & 8) printf("winds in grid direction:"); - else printf("winds are N/S:"); - } + if (mode != -1) { + if (mode & 8) printf("winds in grid direction:"); + else printf("winds are N/S:"); + } } else if (verbose == 2) { - if (scan != -1) { - printf(" scan: %s", scan_mode[(scan >> 5) & 7]); - } - if (mode != -1) { - if (mode & 8) printf(" winds(grid) "); - else printf(" winds(N/S) "); + if (scan != -1) { + printf(" scan: %s", scan_mode[(scan >> 5) & 7]); } + if (mode != -1) { + if (mode & 8) printf(" winds(grid) "); + else printf(" winds(N/S) "); + } } } @@ -11095,20 +11097,20 @@ int setup_user_table(int center, int subcenter, int ptable) { char *filename, line[300]; if (status == init) { - for (i = 0; i < 256; i++) { - parm_table_user[i].name = parm_table_user[i].comment = NULL; - } - status = not_checked; + for (i = 0; i < 256; i++) { + parm_table_user[i].name = parm_table_user[i].comment = NULL; + } + status = not_checked; } if (status == no_file) return 0; if ((user_center == -1 || center == user_center) && - (user_subcenter == -1 || subcenter == user_subcenter) && - (user_ptable == -1 || ptable == user_ptable)) { + (user_subcenter == -1 || subcenter == user_subcenter) && + (user_ptable == -1 || ptable == user_ptable)) { - if (status == filled) return 1; - if (status == not_found) return 0; + if (status == filled) return 1; + if (status == not_found) return 0; } /* open gribtab file if not open */ @@ -11125,10 +11127,10 @@ int setup_user_table(int center, int subcenter, int ptable) { status = no_file; return 0; } - file_open = 1; + file_open = 1; } else { - rewind(input); + rewind(input); } user_center = center; @@ -11138,18 +11140,18 @@ int setup_user_table(int center, int subcenter, int ptable) { /* scan for center & subcenter and ptable */ for (;;) { if (fgets(line, 299, input) == NULL) { - status = not_found; + status = not_found; return 0; } - if (atoi(line) != START) continue; - i = sscanf(line,"%d:%d:%d:%d", &j, ¢er, &subcenter, &ptable); + if (atoi(line) != START) continue; + i = sscanf(line,"%d:%d:%d:%d", &j, ¢er, &subcenter, &ptable); if (i != 4) { - fprintf(stderr,"illegal gribtab center/subcenter/ptable line: %s\n", line); + fprintf(stderr,"illegal gribtab center/subcenter/ptable line: %s\n", line); continue; } - if ((center == -1 || center == user_center) && - (subcenter == -1 || subcenter == user_subcenter) && - (ptable == -1 || ptable == user_ptable)) break; + if ((center == -1 || center == user_center) && + (subcenter == -1 || subcenter == user_subcenter) && + (ptable == -1 || ptable == user_ptable)) break; } user_center = center; @@ -11160,44 +11162,44 @@ int setup_user_table(int center, int subcenter, int ptable) { for (i = 0; i < 256; i++) { if (parm_table_user[i].name != NULL) free(parm_table_user[i].name); if (parm_table_user[i].comment != NULL) free(parm_table_user[i].comment); - parm_table_user[i].name = parm_table_user[i].comment = NULL; + parm_table_user[i].name = parm_table_user[i].comment = NULL; } /* read definitions */ for (;;) { if (fgets(line, 299, input) == NULL) break; - if ((i = atoi(line)) == START) break; - line[299] = 0; + if ((i = atoi(line)) == START) break; + line[299] = 0; - /* find the colons and end-of-line */ - for (c0 = 0; line[c0] != ':' && line[c0] != 0; c0++) ; + /* find the colons and end-of-line */ + for (c0 = 0; line[c0] != ':' && line[c0] != 0; c0++) ; /* skip blank lines */ if (line[c0] == 0) continue; - for (c1 = c0 + 1; line[c1] != ':' && line[c1] != 0; c1++) ; - c2 = strlen(line); + for (c1 = c0 + 1; line[c1] != ':' && line[c1] != 0; c1++) ; + c2 = strlen(line); if (line[c2-1] == '\n') line[--c2] = '\0'; if (c2 <= c1) { - fprintf(stderr,"illegal gribtab line:%s\n", line); - continue; - } - line[c0] = 0; - line[c1] = 0; - - parm_table_user[i].name = (char *) malloc(c1 - c0); - parm_table_user[i].comment = (char *) malloc(c2 - c1); - strcpy(parm_table_user[i].name, line+c0+1); - strcpy(parm_table_user[i].comment, line+c1+1); + fprintf(stderr,"illegal gribtab line:%s\n", line); + continue; + } + line[c0] = 0; + line[c1] = 0; + + parm_table_user[i].name = (char *) malloc(c1 - c0); + parm_table_user[i].comment = (char *) malloc(c2 - c1); + strcpy(parm_table_user[i].name, line+c0+1); + strcpy(parm_table_user[i].comment, line+c1+1); } /* now to fill in undefined blanks */ for (i = 0; i < 255; i++) { - if (parm_table_user[i].name == NULL) { - parm_table_user[i].name = (char *) malloc(7); - sprintf(parm_table_user[i].name, "var%d", i); - parm_table_user[i].comment = (char *) malloc(strlen("undefined")+1); - strcpy(parm_table_user[i].comment, "undefined"); + if (parm_table_user[i].name == NULL) { + parm_table_user[i].name = (char *) malloc(7); + sprintf(parm_table_user[i].name, "var%d", i); + parm_table_user[i].comment = (char *) malloc(strlen("undefined")+1); + strcpy(parm_table_user[i].comment, "undefined"); } } status = filled; @@ -11239,35 +11241,35 @@ int PDS_date(unsigned char *pds, int option, int v_time) { } else { if (verf_time(pds, &year, &month, &day, &hour) != 0) { - if (msg_count++ < 5) fprintf(stderr, "PDS_date: problem\n"); - } + if (msg_count++ < 5) fprintf(stderr, "PDS_date: problem\n"); + } } min = PDS_Minute(pds); switch(option) { - case 0: - printf("%2.2d%2.2d%2.2d%2.2d", year % 100, month, day, hour); - if (minute) printf("-%2.2d", min); - break; - case 1: - printf("%4.4d%2.2d%2.2d%2.2d", year, month, day, hour); - if (minute) printf("-%2.2d", min); - break; - default: - fprintf(stderr,"missing code\n"); - exit(8); + case 0: + printf("%2.2d%2.2d%2.2d%2.2d", year % 100, month, day, hour); + if (minute) printf("-%2.2d", min); + break; + case 1: + printf("%4.4d%2.2d%2.2d%2.2d", year, month, day, hour); + if (minute) printf("-%2.2d", min); + break; + default: + fprintf(stderr,"missing code\n"); + exit(8); } return 0; } #define FEB29 (31+29) static int monthjday[13] = { - 0,31,59,90,120,151,181,212,243,273,304,334,365}; + 0,31,59,90,120,151,181,212,243,273,304,334,365}; static int leap(int year) { - if (year % 4 != 0) return 0; - if (year % 100 != 0) return 1; - return (year % 400 == 0); + if (year % 4 != 0) return 0; + if (year % 100 != 0) return 1; + return (year % 400 == 0); } @@ -11280,48 +11282,48 @@ int add_time(int *year, int *month, int *day, int *hour, int dtime, int unit) { h = *hour; if (unit == YEAR) { - *year = y + dtime; - return 0; + *year = y + dtime; + return 0; } if (unit == DECADE) { - *year = y + (10 * dtime); - return 0; + *year = y + (10 * dtime); + return 0; } if (unit == CENTURY) { - *year = y + (100 * dtime); - return 0; + *year = y + (100 * dtime); + return 0; } if (unit == NORMAL) { - *year = y + (30 * dtime); - return 0; + *year = y + (30 * dtime); + return 0; } if (unit == MONTH) { if (dtime < 0) { - i = (-dtime) / 12 + 1; - y -= i; - dtime += (i * 12); + i = (-dtime) / 12 + 1; + y -= i; + dtime += (i * 12); } - dtime += (m - 1); - *year = y = y + (dtime / 12); - *month = m = 1 + (dtime % 12); + dtime += (m - 1); + *year = y = y + (dtime / 12); + *month = m = 1 + (dtime % 12); /* check if date code if valid */ - days_in_month = monthjday[m] - monthjday[m-1]; - if (m == 2 && leap(y)) { - days_in_month++; - } - if (days_in_month < d) *day = days_in_month; + days_in_month = monthjday[m] - monthjday[m-1]; + if (m == 2 && leap(y)) { + days_in_month++; + } + if (days_in_month < d) *day = days_in_month; - return 0; + return 0; } if (unit == SECOND) { - dtime /= 60; - unit = MINUTE; + dtime /= 60; + unit = MINUTE; } if (unit == MINUTE) { - dtime /= 60; - unit = HOUR; + dtime /= 60; + unit = HOUR; } if (unit == HOURS3) { @@ -11338,7 +11340,7 @@ int add_time(int *year, int *month, int *day, int *hour, int dtime, int unit) { } if (unit == HOUR) { - dtime += h; + dtime += h; *hour = dtime % 24; dtime = dtime / 24; @@ -11352,41 +11354,41 @@ int add_time(int *year, int *month, int *day, int *hour, int dtime, int unit) { /* this is the hard part */ if (unit == DAY) { - /* set m and day to Jan 0, and readjust dtime */ - jday = d + monthjday[m-1]; - if (leap(y) && m > 2) jday++; + /* set m and day to Jan 0, and readjust dtime */ + jday = d + monthjday[m-1]; + if (leap(y) && m > 2) jday++; dtime += jday; while (dtime < 1) { y--; - dtime += 365 + leap(y); + dtime += 365 + leap(y); } - /* one year chunks */ - while (dtime > 365 + leap(y)) { - dtime -= (365 + leap(y)); - y++; - } - - /* calculate the month and day */ - - if (leap(y) && dtime == FEB29) { - m = 2; - d = 29; - } - else { - if (leap(y) && dtime > FEB29) dtime--; - for (i = 11; monthjday[i] >= dtime; --i); - m = i + 1; - d = dtime - monthjday[i]; - } - *year = y; - *month = m; - *day = d; - return 0; - } - fprintf(stderr,"add_time: undefined time unit %d\n", unit); - return 1; + /* one year chunks */ + while (dtime > 365 + leap(y)) { + dtime -= (365 + leap(y)); + y++; + } + + /* calculate the month and day */ + + if (leap(y) && dtime == FEB29) { + m = 2; + d = 29; + } + else { + if (leap(y) && dtime > FEB29) dtime--; + for (i = 11; monthjday[i] >= dtime; --i); + m = i + 1; + d = dtime - monthjday[i]; + } + *year = y; + *month = m; + *day = d; + return 0; + } + fprintf(stderr,"add_time: undefined time unit %d\n", unit); + return 1; } @@ -11455,83 +11457,83 @@ void ensemble(unsigned char *pds, int mode) { if ((PDS_Center(pds) == NMC || ncep_ens) && pdslen >= 45 && pds[40] == 1) { - /* control run */ - - if (pds[41] == 1) { - if (mode != 2) { - printf("ens%c0:%c", pds[42] == 1 ? '+' : '-', char_end); - } - else { - printf("%s-res_ens_control ", pds[42] == 1 ? "hi" : "low"); - } - } - - /* perturbation run */ - - else if (pds[41] == 2 || pds[41] == 3) { - if (mode != 2) { - printf("ens%c%d%c", pds[41] == 3 ? '+' : '-', pds[42],char_end); - } - else { - printf("ens_perturbation=%c%d ",pds[41] == 3 ? '+' : '-', - pds[42]); - } - } - - /* cluster mean */ - - else if (pds[41] == 4) { - if (mode != 2) printf("cluster%c", char_end); - else printf("cluster(%d members) ",pds[60]); - } - - - /* ensemble mean */ - - else if (pds[41] == 5) { - if (mode != 2) printf("ensemble%c", char_end); - else printf("ensemble(%d members) ",pds[60]); - } - - /* other case .. debug code */ - - else { - printf("ens %d/%d/%d/%d%c", pds[41],pds[42],pds[43],pds[44],char_end); - } - - - if (pdslen >= 44) { - if (pds[43] == 1 && pds[41] >= 4) printf("mean%c", char_end); - else if (pds[43] == 2) printf("weighted mean%c",char_end); - else if (pds[43] == 3) printf("no bias%c",char_end); - else if (pds[43] == 4) printf("weighted mean no bias%c",char_end); - else if (pds[43] == 5) printf("weight%c",char_end); - else if (pds[43] == 6) printf("climate percentile%c",char_end); - else if (pds[43] == 7) printf("daily climate mean%c",char_end); - else if (pds[43] == 8) printf("daily climate std dev%c",char_end); - else if (pds[43] == 11) printf("std dev%c",char_end); - else if (pds[43] == 12) printf("norm std dev%c",char_end); - else if (pds[43] == 21) printf("max val%c",char_end); - else if (pds[43] == 22) printf("min val%c",char_end); - } - - /* NCEP probability limits */ - - if ((PDS_PARAM(pds) == 191 || PDS_PARAM(pds) == 192) && pdslen >= 47) { - ctmp = PDS_PARAM(pds); - PDS_PARAM(pds) = pds[45]; - if (pds[46] == 1 && pdslen >= 51) { - printf("prob(%s<%f)%c", k5toa(pds), ibm2flt(pds+47),char_end); - } - else if (pds[46] == 2 && pdslen >= 54) { - printf("prob(%s>%f)%c", k5toa(pds), ibm2flt(pds+51), char_end); - } - else if (pds[46] == 3 && pdslen >= 54) { - printf("prob(%f<%s<%f)%c", ibm2flt(pds+47), k5toa(pds), - ibm2flt(pds+51), char_end); - } + /* control run */ + + if (pds[41] == 1) { + if (mode != 2) { + printf("ens%c0:%c", pds[42] == 1 ? '+' : '-', char_end); + } + else { + printf("%s-res_ens_control ", pds[42] == 1 ? "hi" : "low"); + } + } + + /* perturbation run */ + + else if (pds[41] == 2 || pds[41] == 3) { + if (mode != 2) { + printf("ens%c%d%c", pds[41] == 3 ? '+' : '-', pds[42],char_end); + } + else { + printf("ens_perturbation=%c%d ",pds[41] == 3 ? '+' : '-', + pds[42]); + } + } + + /* cluster mean */ + + else if (pds[41] == 4) { + if (mode != 2) printf("cluster%c", char_end); + else printf("cluster(%d members) ",pds[60]); + } + + + /* ensemble mean */ + + else if (pds[41] == 5) { + if (mode != 2) printf("ensemble%c", char_end); + else printf("ensemble(%d members) ",pds[60]); + } + + /* other case .. debug code */ + + else { + printf("ens %d/%d/%d/%d%c", pds[41],pds[42],pds[43],pds[44],char_end); + } + + + if (pdslen >= 44) { + if (pds[43] == 1 && pds[41] >= 4) printf("mean%c", char_end); + else if (pds[43] == 2) printf("weighted mean%c",char_end); + else if (pds[43] == 3) printf("no bias%c",char_end); + else if (pds[43] == 4) printf("weighted mean no bias%c",char_end); + else if (pds[43] == 5) printf("weight%c",char_end); + else if (pds[43] == 6) printf("climate percentile%c",char_end); + else if (pds[43] == 7) printf("daily climate mean%c",char_end); + else if (pds[43] == 8) printf("daily climate std dev%c",char_end); + else if (pds[43] == 11) printf("std dev%c",char_end); + else if (pds[43] == 12) printf("norm std dev%c",char_end); + else if (pds[43] == 21) printf("max val%c",char_end); + else if (pds[43] == 22) printf("min val%c",char_end); + } + + /* NCEP probability limits */ + + if ((PDS_PARAM(pds) == 191 || PDS_PARAM(pds) == 192) && pdslen >= 47) { + ctmp = PDS_PARAM(pds); + PDS_PARAM(pds) = pds[45]; + if (pds[46] == 1 && pdslen >= 51) { + printf("prob(%s<%f)%c", k5toa(pds), ibm2flt(pds+47),char_end); + } + else if (pds[46] == 2 && pdslen >= 54) { + printf("prob(%s>%f)%c", k5toa(pds), ibm2flt(pds+51), char_end); + } + else if (pds[46] == 3 && pdslen >= 54) { + printf("prob(%f<%s<%f)%c", ibm2flt(pds+47), k5toa(pds), + ibm2flt(pds+51), char_end); + } PDS_PARAM(pds) = ctmp; - } + } } } @@ -13130,522 +13132,522 @@ const struct ParmTable parm_table_dwd_205[256] = { }; const struct ParmTable parm_table_cptec_254[256] = { - /* 0 */ {"var0", "undefined"}, - /* 1 */ {"PRES", "Pressure [hPa]"}, - /* 2 */ {"psnm", "Pressure reduced to MSL [hPa]"}, - /* 3 */ {"tsps", "Pressure tendency [Pa/s]"}, - /* 4 */ {"var4", "undefined"}, - /* 5 */ {"var5", "undefined"}, - /* 6 */ {"geop", "Geopotential [dam]"}, - /* 7 */ {"zgeo", "Geopotential height [gpm]"}, - /* 8 */ {"gzge", "Geometric height [m]"}, - /* 9 */ {"var9", "undefined"}, - /* 10 */ {"var10", "undefined"}, - /* 11 */ {"temp", "ABSOLUTE TEMPERATURE [K]"}, - /* 12 */ {"vtmp", "VIRTUAL TEMPERATURE [K]"}, - /* 13 */ {"ptmp", "POTENTIAL TEMPERATURE [K]"}, - /* 14 */ {"psat", "PSEUDO-ADIABATIC POTENTIAL TEMPERATURE [K]"}, - /* 15 */ {"mxtp", "MAXIMUM TEMPERATURE [K]"}, - /* 16 */ {"mntp", "MINIMUM TEMPERATURE [K]"}, - /* 17 */ {"tpor", "DEW POINT TEMPERATURE [K]"}, - /* 18 */ {"dptd", "DEW POINT DEPRESSION [K]"}, - /* 19 */ {"lpsr", "LAPSE RATE [K/m]"}, - /* 20 */ {"var20", "undefined"}, - /* 21 */ {"rds1", "RADAR SPECTRA(1) [non-dim]"}, - /* 22 */ {"rds2", "RADAR SPECTRA(2) [non-dim]"}, - /* 23 */ {"rds3", "RADAR SPECTRA(3) [non-dim]"}, - /* 24 */ {"var24", "undefined"}, - /* 25 */ {"tpan", "TEMPERATURE ANOMALY [K]"}, - /* 26 */ {"psan", "PRESSURE ANOMALY [Pa hPa]"}, - /* 27 */ {"zgan", "GEOPOT HEIGHT ANOMALY [m]"}, - /* 28 */ {"wvs1", "WAVE SPECTRA(1) [non-dim]"}, - /* 29 */ {"wvs2", "WAVE SPECTRA(2) [non-dim]"}, - /* 30 */ {"wvs3", "WAVE SPECTRA(3) [non-dim]"}, - /* 31 */ {"wind", "WIND DIRECTION [deg]"}, - /* 32 */ {"wins", "WIND SPEED [m/s]"}, - /* 33 */ {"uvel", "ZONAL WIND (U) [m/s]"}, - /* 34 */ {"vvel", "MERIDIONAL WIND (V) [m/s]"}, - /* 35 */ {"fcor", "STREAM FUNCTION [m2/s]"}, - /* 36 */ {"potv", "VELOCITY POTENTIAL [m2/s]"}, - /* 37 */ {"var37", "undefined"}, - /* 38 */ {"sgvv", "SIGMA COORD VERT VEL [sec/sec]"}, - /* 39 */ {"omeg", "OMEGA [Pa/s]"}, - /* 40 */ {"omg2", "VERTICAL VELOCITY [m/s]"}, - /* 41 */ {"abvo", "ABSOLUTE VORTICITY [10**5/sec]"}, - /* 42 */ {"abdv", "ABSOLUTE DIVERGENCE [10**5/sec]"}, - /* 43 */ {"vort", "VORTICITY [1/s]"}, - /* 44 */ {"divg", "DIVERGENCE [1/s]"}, - /* 45 */ {"vucs", "VERTICAL U-COMP SHEAR [1/sec]"}, - /* 46 */ {"vvcs", "VERT V-COMP SHEAR [1/sec]"}, - /* 47 */ {"dirc", "DIRECTION OF CURRENT [deg]"}, - /* 48 */ {"spdc", "SPEED OF CURRENT [m/s]"}, - /* 49 */ {"ucpc", "U-COMPONENT OF CURRENT [m/s]"}, - /* 50 */ {"vcpc", "V-COMPONENT OF CURRENT [m/s]"}, - /* 51 */ {"umes", "SPECIFIC HUMIDITY [kg/kg]"}, - /* 52 */ {"umrl", "RELATIVE HUMIDITY [no Dim]"}, - /* 53 */ {"hmxr", "HUMIDITY MIXING RATIO [kg/kg]"}, - /* 54 */ {"agpl", "INST. PRECIPITABLE WATER [Kg/m2]"}, - /* 55 */ {"vapp", "VAPOUR PRESSURE [Pa hpa]"}, - /* 56 */ {"sadf", "SATURATION DEFICIT [Pa hPa]"}, - /* 57 */ {"evap", "EVAPORATION [Kg/m2/day]"}, - /* 58 */ {"var58", "undefined"}, - /* 59 */ {"prcr", "PRECIPITATION RATE [kg/m2/day]"}, - /* 60 */ {"thpb", "THUNDER PROBABILITY [%]"}, - /* 61 */ {"prec", "TOTAL PRECIPITATION [Kg/m2/day]"}, - /* 62 */ {"prge", "LARGE SCALE PRECIPITATION [Kg/m2/day]"}, - /* 63 */ {"prcv", "CONVECTIVE PRECIPITATION [Kg/m2/day]"}, - /* 64 */ {"neve", "SNOWFALL [Kg/m2/day]"}, - /* 65 */ {"wenv", "WAT EQUIV ACC SNOW DEPTH [kg/m2]"}, - /* 66 */ {"nvde", "SNOW DEPTH [cm]"}, - /* 67 */ {"mxld", "MIXED LAYER DEPTH [m cm]"}, - /* 68 */ {"tthd", "TRANS THERMOCLINE DEPTH [m cm]"}, - /* 69 */ {"mthd", "MAIN THERMOCLINE DEPTH [m cm]"}, - /* 70 */ {"mtha", "MAIN THERMOCLINE ANOM [m cm]"}, - /* 71 */ {"cbnv", "CLOUD COVER [0-1]"}, - /* 72 */ {"cvnv", "CONVECTIVE CLOUD COVER [0-1]"}, - /* 73 */ {"lwnv", "LOW CLOUD COVER [0-1]"}, - /* 74 */ {"mdnv", "MEDIUM CLOUD COVER [0-1]"}, - /* 75 */ {"hinv", "HIGH CLOUD COVER [0-1]"}, - /* 76 */ {"wtnv", "CLOUD WATER [kg/m2]"}, - /* 77 */ {"bli", "BEST LIFTED INDEX (TO 500 HPA) [K]"}, - /* 78 */ {"var78", "undefined"}, - /* 79 */ {"var79", "undefined"}, - /* 80 */ {"var80", "undefined"}, - /* 81 */ {"lsmk", "LAND SEA MASK [0,1]"}, - /* 82 */ {"dslm", "DEV SEA_LEV FROM MEAN [m]"}, - /* 83 */ {"zorl", "ROUGHNESS LENGTH [m]"}, - /* 84 */ {"albe", "ALBEDO [%]"}, - /* 85 */ {"dstp", "DEEP SOIL TEMPERATURE [K]"}, - /* 86 */ {"soic", "SOIL MOISTURE CONTENT [Kg/m2]"}, - /* 87 */ {"vege", "VEGETATION [%]"}, - /* 88 */ {"var88", "undefined"}, - /* 89 */ {"dens", "DENSITY [kg/m3]"}, - /* 90 */ {"var90", "Undefined"}, - /* 91 */ {"icec", "ICE CONCENTRATION [fraction]"}, - /* 92 */ {"icet", "ICE THICKNESS [m]"}, - /* 93 */ {"iced", "DIRECTION OF ICE DRIFT [deg]"}, - /* 94 */ {"ices", "SPEED OF ICE DRIFT [m/s]"}, - /* 95 */ {"iceu", "U-COMP OF ICE DRIFT [m/s]"}, - /* 96 */ {"icev", "V-COMP OF ICE DRIFT [m/s]"}, - /* 97 */ {"iceg", "ICE GROWTH [m]"}, - /* 98 */ {"icdv", "ICE DIVERGENCE [sec/sec]"}, - /* 99 */ {"var99", "undefined"}, - /* 100 */ {"shcw", "SIG HGT COM WAVE/SWELL [m]"}, - /* 101 */ {"wwdi", "DIRECTION OF WIND WAVE [deg]"}, - /* 102 */ {"wwsh", "SIG HGHT OF WIND WAVES [m]"}, - /* 103 */ {"wwmp", "MEAN PERIOD WIND WAVES [sec]"}, - /* 104 */ {"swdi", "DIRECTION OF SWELL WAVE [deg]"}, - /* 105 */ {"swsh", "SIG HEIGHT SWELL WAVES [m]"}, - /* 106 */ {"swmp", "MEAN PERIOD SWELL WAVES [sec]"}, - /* 107 */ {"prwd", "PRIMARY WAVE DIRECTION [deg]"}, - /* 108 */ {"prmp", "PRIM WAVE MEAN PERIOD [s]"}, - /* 109 */ {"swdi", "SECOND WAVE DIRECTION [deg]"}, - /* 110 */ {"swmp", "SECOND WAVE MEAN PERIOD [s]"}, - /* 111 */ {"ocas", "SHORT WAVE ABSORBED AT GROUND [W/m2]"}, - /* 112 */ {"slds", "NET LONG WAVE AT BOTTOM [W/m2]"}, - /* 113 */ {"nswr", "NET SHORT-WAV RAD(TOP) [W/m2]"}, - /* 114 */ {"role", "OUTGOING LONG WAVE AT TOP [W/m2]"}, - /* 115 */ {"lwrd", "LONG-WAV RAD [W/m2]"}, - /* 116 */ {"swea", "SHORT WAVE ABSORBED BY EARTH/ATMOSPHERE [W/m2]"}, - /* 117 */ {"glbr", "GLOBAL RADIATION [W/m2 ]"}, - /* 118 */ {"var118", "undefined"}, - /* 119 */ {"var119", "undefined"}, - /* 120 */ {"var120", "undefined"}, - /* 121 */ {"clsf", "LATENT HEAT FLUX FROM SURFACE [W/m2]"}, - /* 122 */ {"cssf", "SENSIBLE HEAT FLUX FROM SURFACE [W/m2]"}, - /* 123 */ {"blds", "BOUND LAYER DISSIPATION [W/m2]"}, - /* 124 */ {"var124", "undefined"}, - /* 125 */ {"var125", "undefined"}, - /* 126 */ {"var126", "undefined"}, - /* 127 */ {"imag", "IMAGE [image^data]"}, - /* 128 */ {"tp2m", "2 METRE TEMPERATURE [K]"}, - /* 129 */ {"dp2m", "2 METRE DEWPOINT TEMPERATURE [K]"}, - /* 130 */ {"u10m", "10 METRE U-WIND COMPONENT [m/s]"}, - /* 131 */ {"v10m", "10 METRE V-WIND COMPONENT [m/s]"}, - /* 132 */ {"topo", "TOPOGRAPHY [m]"}, - /* 133 */ {"gsfp", "GEOMETRIC MEAN SURFACE PRESSURE [hPa]"}, - /* 134 */ {"lnsp", "LN SURFACE PRESSURE [hPa]"}, - /* 135 */ {"pslc", "SURFACE PRESSURE [hPa]"}, - /* 136 */ {"pslm", "M S L PRESSURE (MESINGER METHOD) [hPa]"}, - /* 137 */ {"mask", "MASK [-/+]"}, - /* 138 */ {"mxwu", "MAXIMUM U-WIND [m/s]"}, - /* 139 */ {"mxwv", "MAXIMUM V-WIND [m/s]"}, - /* 140 */ {"cape", "CONVECTIVE AVAIL. POT.ENERGY [m2/s2]"}, - /* 141 */ {"cine", "CONVECTIVE INHIB. ENERGY [m2/s2]"}, - /* 142 */ {"lhcv", "CONVECTIVE LATENT HEATING [K/s]"}, - /* 143 */ {"mscv", "CONVECTIVE MOISTURE SOURCE [1/s]"}, - /* 144 */ {"scvm", "SHALLOW CONV. MOISTURE SOURCE [1/s]"}, - /* 145 */ {"scvh", "SHALLOW CONVECTIVE HEATING [K/s]"}, - /* 146 */ {"mxwp", "MAXIMUM WIND PRESS. LVL [hPa]"}, - /* 147 */ {"ustr", "STORM MOTION U-COMPONENT [m/s]"}, - /* 148 */ {"vstr", "STORM MOTION V-COMPONENT [m/s]"}, - /* 149 */ {"cbnt", "MEAN CLOUD COVER [0-1]"}, - /* 150 */ {"pcbs", "PRESSURE AT CLOUD BASE [hPa]"}, - /* 151 */ {"pctp", "PRESSURE AT CLOUD TOP [hPa]"}, - /* 152 */ {"fzht", "FREEZING LEVEL HEIGHT [m]"}, - /* 153 */ {"fzrh", "FREEZING LEVEL RELATIVE HUMIDITY [%]"}, - /* 154 */ {"fdlt", "FLIGHT LEVELS TEMPERATURE [K]"}, - /* 155 */ {"fdlu", "FLIGHT LEVELS U-WIND [m/s]"}, - /* 156 */ {"fdlv", "FLIGHT LEVELS V-WIND [m/s]"}, - /* 157 */ {"tppp", "TROPOPAUSE PRESSURE [hPa]"}, - /* 158 */ {"tppt", "TROPOPAUSE TEMPERATURE [K]"}, - /* 159 */ {"tppu", "TROPOPAUSE U-WIND COMPONENT [m/s]"}, - /* 160 */ {"tppv", "TROPOPAUSE v-WIND COMPONENT [m/s]"}, - /* 161 */ {"var161", "undefined"}, - /* 162 */ {"gvdu", "GRAVITY WAVE DRAG DU/DT [m/s2]"}, - /* 163 */ {"gvdv", "GRAVITY WAVE DRAG DV/DT [m/s2]"}, - /* 164 */ {"gvus", "GRAVITY WAVE DRAG SFC ZONAL STRESS [Pa]"}, - /* 165 */ {"gvvs", "GRAVITY WAVE DRAG SFC MERIDIONAL STRESS [Pa]"}, - /* 166 */ {"var166", "undefined"}, - /* 167 */ {"dvsh", "DIVERGENCE OF SPECIFIC HUMIDITY [1/s]"}, - /* 168 */ {"hmfc", "HORIZ. MOISTURE FLUX CONV. [1/s]"}, - /* 169 */ {"vmfl", "VERT. INTEGRATED MOISTURE FLUX CONV. [kg/(m2*s)]"}, - /* 170 */ {"vadv", "VERTICAL MOISTURE ADVECTION [kg/(kg*s)]"}, - /* 171 */ {"nhcm", "NEG. HUM. CORR. MOISTURE SOURCE [kg/(kg*s)]"}, - /* 172 */ {"lglh", "LARGE SCALE LATENT HEATING [K/s]"}, - /* 173 */ {"lgms", "LARGE SCALE MOISTURE SOURCE [1/s]"}, - /* 174 */ {"smav", "SOIL MOISTURE AVAILABILITY [0-1]"}, - /* 175 */ {"tgrz", "SOIL TEMPERATURE OF ROOT ZONE [K]"}, - /* 176 */ {"bslh", "BARE SOIL LATENT HEAT [Ws/m2]"}, - /* 177 */ {"evpp", "POTENTIAL SFC EVAPORATION [m]"}, - /* 178 */ {"rnof", "RUNOFF [kg/m2/s)]"}, - /* 179 */ {"pitp", "INTERCEPTION LOSS [W/m2]"}, - /* 180 */ {"vpca", "VAPOR PRESSURE OF CANOPY AIR SPACE [mb]"}, - /* 181 */ {"qsfc", "SURFACE SPEC HUMIDITY [kg/kg]"}, - /* 182 */ {"ussl", "SOIL WETNESS OF SURFACE [0-1]"}, - /* 183 */ {"uzrs", "SOIL WETNESS OF ROOT ZONE [0-1]"}, - /* 184 */ {"uzds", "SOIL WETNESS OF DRAINAGE ZONE [0-1]"}, - /* 185 */ {"amdl", "STORAGE ON CANOPY [m]"}, - /* 186 */ {"amsl", "STORAGE ON GROUND [m]"}, - /* 187 */ {"tsfc", "SURFACE TEMPERATURE [K]"}, - /* 188 */ {"tems", "SURFACE ABSOLUTE TEMPERATURE [K]"}, - /* 189 */ {"tcas", "TEMPERATURE OF CANOPY AIR SPACE [K]"}, - /* 190 */ {"ctmp", "TEMPERATURE AT CANOPY [K]"}, - /* 191 */ {"tgsc", "GROUND/SURFACE COVER TEMPERATURE [K]"}, - /* 192 */ {"uves", "SURFACE ZONAL WIND (U) [m/s]"}, - /* 193 */ {"usst", "SURFACE ZONAL WIND STRESS [Pa]"}, - /* 194 */ {"vves", "SURFACE MERIDIONAL WIND (V) [m/s]"}, - /* 195 */ {"vsst", "SURFACE MERIDIONAL WIND STRESS [Pa]"}, - /* 196 */ {"suvf", "SURFACE MOMENTUM FLUX [W/m2]"}, - /* 197 */ {"iswf", "INCIDENT SHORT WAVE FLUX [W/m2]"}, - /* 198 */ {"ghfl", "TIME AVE GROUND HT FLX [W/m2]"}, - /* 199 */ {"var199", "undefined"}, - /* 200 */ {"lwbc", "NET LONG WAVE AT BOTTOM (CLEAR) [W/m2]"}, - /* 201 */ {"lwtc", "OUTGOING LONG WAVE AT TOP (CLEAR) [W/m2]"}, - /* 202 */ {"swec", "SHORT WV ABSRBD BY EARTH/ATMOS (CLEAR) [W/m2]"}, - /* 203 */ {"ocac", "SHORT WAVE ABSORBED AT GROUND (CLEAR) [W/m2]"}, - /* 204 */ {"var204", "undefined"}, - /* 205 */ {"lwrh", "LONG WAVE RADIATIVE HEATING [K/s]"}, - /* 206 */ {"swrh", "SHORT WAVE RADIATIVE HEATING [K/s]"}, - /* 207 */ {"olis", "DOWNWARD LONG WAVE AT BOTTOM [W/m2]"}, - /* 208 */ {"olic", "DOWNWARD LONG WAVE AT BOTTOM (CLEAR) [W/m2]"}, - /* 209 */ {"ocis", "DOWNWARD SHORT WAVE AT GROUND [W/m2]"}, - /* 210 */ {"ocic", "DOWNWARD SHORT WAVE AT GROUND (CLEAR) [W/m2]"}, - /* 211 */ {"oles", "UPWARD LONG WAVE AT BOTTOM [W/m2]"}, - /* 212 */ {"oces", "UPWARD SHORT WAVE AT GROUND [W/m2]"}, - /* 213 */ {"swgc", "UPWARD SHORT WAVE AT GROUND (CLEAR) [W/m2]"}, - /* 214 */ {"roce", "UPWARD SHORT WAVE AT TOP [W/m2]"}, - /* 215 */ {"swtc", "UPWARD SHORT WAVE AT TOP (CLEAR) [W/m2]"}, - /* 216 */ {"var216", "undefined"}, - /* 217 */ {"var217", "undefined"}, - /* 218 */ {"hhdf", "HORIZONTAL HEATING DIFFUSION [K/s]"}, - /* 219 */ {"hmdf", "HORIZONTAL MOISTURE DIFFUSION [1/s]"}, - /* 220 */ {"hddf", "HORIZONTAL DIVERGENCE DIFFUSION [1/s2]"}, - /* 221 */ {"hvdf", "HORIZONTAL VORTICITY DIFFUSION [1/s2]"}, - /* 222 */ {"vdms", "VERTICAL DIFF. MOISTURE SOURCE [1/s]"}, - /* 223 */ {"vdfu", "VERTICAL DIFFUSION DU/DT [m/s2]"}, - /* 224 */ {"vdfv", "VERTICAL DIFFUSION DV/DT [m/s2]"}, - /* 225 */ {"vdfh", "VERTICAL DIFFUSION HEATING [K/s]"}, - /* 226 */ {"umrs", "SURFACE RELATIVE HUMIDITY [no Dim]"}, - /* 227 */ {"vdcc", "VERTICAL DIST TOTAL CLOUD COVER [no Dim]"}, - /* 228 */ {"var228", "undefined"}, - /* 229 */ {"var229", "undefined"}, - /* 230 */ {"usmt", "TIME MEAN SURFACE ZONAL WIND (U) [m/s]"}, - /* 231 */ {"vsmt", "TIME MEAN SURFACE MERIDIONAL WIND (V) [m/s]"}, - /* 232 */ {"tsmt", "TIME MEAN SURFACE ABSOLUTE TEMPERATURE [K]"}, - /* 233 */ {"rsmt", "TIME MEAN SURFACE RELATIVE HUMIDITY [no Dim]"}, - /* 234 */ {"atmt", "TIME MEAN ABSOLUTE TEMPERATURE [K]"}, - /* 235 */ {"stmt", "TIME MEAN DEEP SOIL TEMPERATURE [K]"}, - /* 236 */ {"ommt", "TIME MEAN DERIVED OMEGA [Pa/s]"}, - /* 237 */ {"dvmt", "TIME MEAN DIVERGENCE [1/s]"}, - /* 238 */ {"zhmt", "TIME MEAN GEOPOTENTIAL HEIGHT [m]"}, - /* 239 */ {"lnmt", "TIME MEAN LOG SURFACE PRESSURE [ln(cbar)]"}, - /* 240 */ {"mkmt", "TIME MEAN MASK [-/+]"}, - /* 241 */ {"vvmt", "TIME MEAN MERIDIONAL WIND (V) [m/s]"}, - /* 242 */ {"omtm", "TIME MEAN OMEGA [cbar/s]"}, - /* 243 */ {"ptmt", "TIME MEAN POTENTIAL TEMPERATURE [K]"}, - /* 244 */ {"pcmt", "TIME MEAN PRECIP. WATER [kg/m2]"}, - /* 245 */ {"rhmt", "TIME MEAN RELATIVE HUMIDITY [%]"}, - /* 246 */ {"mpmt", "TIME MEAN SEA LEVEL PRESSURE [hPa]"}, - /* 247 */ {"simt", "TIME MEAN SIGMADOT [1/s]"}, - /* 248 */ {"uemt", "TIME MEAN SPECIFIC HUMIDITY [kg/kg]"}, - /* 249 */ {"fcmt", "TIME MEAN STREAM FUNCTION| m2/s]"}, - /* 250 */ {"psmt", "TIME MEAN SURFACE PRESSURE [hPa]"}, - /* 251 */ {"tmmt", "TIME MEAN SURFACE TEMPERATURE [K]"}, - /* 252 */ {"pvmt", "TIME MEAN VELOCITY POTENTIAL [m2/s]"}, - /* 253 */ {"tvmt", "TIME MEAN VIRTUAL TEMPERATURE [K]"}, - /* 254 */ {"vtmt", "TIME MEAN VORTICITY [1/s]"}, - /* 255 */ {"uvmt", "TIME MEAN ZONAL WIND (U) [m/s]"}, + /* 0 */ {"var0", "undefined"}, + /* 1 */ {"PRES", "Pressure [hPa]"}, + /* 2 */ {"psnm", "Pressure reduced to MSL [hPa]"}, + /* 3 */ {"tsps", "Pressure tendency [Pa/s]"}, + /* 4 */ {"var4", "undefined"}, + /* 5 */ {"var5", "undefined"}, + /* 6 */ {"geop", "Geopotential [dam]"}, + /* 7 */ {"zgeo", "Geopotential height [gpm]"}, + /* 8 */ {"gzge", "Geometric height [m]"}, + /* 9 */ {"var9", "undefined"}, + /* 10 */ {"var10", "undefined"}, + /* 11 */ {"temp", "ABSOLUTE TEMPERATURE [K]"}, + /* 12 */ {"vtmp", "VIRTUAL TEMPERATURE [K]"}, + /* 13 */ {"ptmp", "POTENTIAL TEMPERATURE [K]"}, + /* 14 */ {"psat", "PSEUDO-ADIABATIC POTENTIAL TEMPERATURE [K]"}, + /* 15 */ {"mxtp", "MAXIMUM TEMPERATURE [K]"}, + /* 16 */ {"mntp", "MINIMUM TEMPERATURE [K]"}, + /* 17 */ {"tpor", "DEW POINT TEMPERATURE [K]"}, + /* 18 */ {"dptd", "DEW POINT DEPRESSION [K]"}, + /* 19 */ {"lpsr", "LAPSE RATE [K/m]"}, + /* 20 */ {"var20", "undefined"}, + /* 21 */ {"rds1", "RADAR SPECTRA(1) [non-dim]"}, + /* 22 */ {"rds2", "RADAR SPECTRA(2) [non-dim]"}, + /* 23 */ {"rds3", "RADAR SPECTRA(3) [non-dim]"}, + /* 24 */ {"var24", "undefined"}, + /* 25 */ {"tpan", "TEMPERATURE ANOMALY [K]"}, + /* 26 */ {"psan", "PRESSURE ANOMALY [Pa hPa]"}, + /* 27 */ {"zgan", "GEOPOT HEIGHT ANOMALY [m]"}, + /* 28 */ {"wvs1", "WAVE SPECTRA(1) [non-dim]"}, + /* 29 */ {"wvs2", "WAVE SPECTRA(2) [non-dim]"}, + /* 30 */ {"wvs3", "WAVE SPECTRA(3) [non-dim]"}, + /* 31 */ {"wind", "WIND DIRECTION [deg]"}, + /* 32 */ {"wins", "WIND SPEED [m/s]"}, + /* 33 */ {"uvel", "ZONAL WIND (U) [m/s]"}, + /* 34 */ {"vvel", "MERIDIONAL WIND (V) [m/s]"}, + /* 35 */ {"fcor", "STREAM FUNCTION [m2/s]"}, + /* 36 */ {"potv", "VELOCITY POTENTIAL [m2/s]"}, + /* 37 */ {"var37", "undefined"}, + /* 38 */ {"sgvv", "SIGMA COORD VERT VEL [sec/sec]"}, + /* 39 */ {"omeg", "OMEGA [Pa/s]"}, + /* 40 */ {"omg2", "VERTICAL VELOCITY [m/s]"}, + /* 41 */ {"abvo", "ABSOLUTE VORTICITY [10**5/sec]"}, + /* 42 */ {"abdv", "ABSOLUTE DIVERGENCE [10**5/sec]"}, + /* 43 */ {"vort", "VORTICITY [1/s]"}, + /* 44 */ {"divg", "DIVERGENCE [1/s]"}, + /* 45 */ {"vucs", "VERTICAL U-COMP SHEAR [1/sec]"}, + /* 46 */ {"vvcs", "VERT V-COMP SHEAR [1/sec]"}, + /* 47 */ {"dirc", "DIRECTION OF CURRENT [deg]"}, + /* 48 */ {"spdc", "SPEED OF CURRENT [m/s]"}, + /* 49 */ {"ucpc", "U-COMPONENT OF CURRENT [m/s]"}, + /* 50 */ {"vcpc", "V-COMPONENT OF CURRENT [m/s]"}, + /* 51 */ {"umes", "SPECIFIC HUMIDITY [kg/kg]"}, + /* 52 */ {"umrl", "RELATIVE HUMIDITY [no Dim]"}, + /* 53 */ {"hmxr", "HUMIDITY MIXING RATIO [kg/kg]"}, + /* 54 */ {"agpl", "INST. PRECIPITABLE WATER [Kg/m2]"}, + /* 55 */ {"vapp", "VAPOUR PRESSURE [Pa hpa]"}, + /* 56 */ {"sadf", "SATURATION DEFICIT [Pa hPa]"}, + /* 57 */ {"evap", "EVAPORATION [Kg/m2/day]"}, + /* 58 */ {"var58", "undefined"}, + /* 59 */ {"prcr", "PRECIPITATION RATE [kg/m2/day]"}, + /* 60 */ {"thpb", "THUNDER PROBABILITY [%]"}, + /* 61 */ {"prec", "TOTAL PRECIPITATION [Kg/m2/day]"}, + /* 62 */ {"prge", "LARGE SCALE PRECIPITATION [Kg/m2/day]"}, + /* 63 */ {"prcv", "CONVECTIVE PRECIPITATION [Kg/m2/day]"}, + /* 64 */ {"neve", "SNOWFALL [Kg/m2/day]"}, + /* 65 */ {"wenv", "WAT EQUIV ACC SNOW DEPTH [kg/m2]"}, + /* 66 */ {"nvde", "SNOW DEPTH [cm]"}, + /* 67 */ {"mxld", "MIXED LAYER DEPTH [m cm]"}, + /* 68 */ {"tthd", "TRANS THERMOCLINE DEPTH [m cm]"}, + /* 69 */ {"mthd", "MAIN THERMOCLINE DEPTH [m cm]"}, + /* 70 */ {"mtha", "MAIN THERMOCLINE ANOM [m cm]"}, + /* 71 */ {"cbnv", "CLOUD COVER [0-1]"}, + /* 72 */ {"cvnv", "CONVECTIVE CLOUD COVER [0-1]"}, + /* 73 */ {"lwnv", "LOW CLOUD COVER [0-1]"}, + /* 74 */ {"mdnv", "MEDIUM CLOUD COVER [0-1]"}, + /* 75 */ {"hinv", "HIGH CLOUD COVER [0-1]"}, + /* 76 */ {"wtnv", "CLOUD WATER [kg/m2]"}, + /* 77 */ {"bli", "BEST LIFTED INDEX (TO 500 HPA) [K]"}, + /* 78 */ {"var78", "undefined"}, + /* 79 */ {"var79", "undefined"}, + /* 80 */ {"var80", "undefined"}, + /* 81 */ {"lsmk", "LAND SEA MASK [0,1]"}, + /* 82 */ {"dslm", "DEV SEA_LEV FROM MEAN [m]"}, + /* 83 */ {"zorl", "ROUGHNESS LENGTH [m]"}, + /* 84 */ {"albe", "ALBEDO [%]"}, + /* 85 */ {"dstp", "DEEP SOIL TEMPERATURE [K]"}, + /* 86 */ {"soic", "SOIL MOISTURE CONTENT [Kg/m2]"}, + /* 87 */ {"vege", "VEGETATION [%]"}, + /* 88 */ {"var88", "undefined"}, + /* 89 */ {"dens", "DENSITY [kg/m3]"}, + /* 90 */ {"var90", "Undefined"}, + /* 91 */ {"icec", "ICE CONCENTRATION [fraction]"}, + /* 92 */ {"icet", "ICE THICKNESS [m]"}, + /* 93 */ {"iced", "DIRECTION OF ICE DRIFT [deg]"}, + /* 94 */ {"ices", "SPEED OF ICE DRIFT [m/s]"}, + /* 95 */ {"iceu", "U-COMP OF ICE DRIFT [m/s]"}, + /* 96 */ {"icev", "V-COMP OF ICE DRIFT [m/s]"}, + /* 97 */ {"iceg", "ICE GROWTH [m]"}, + /* 98 */ {"icdv", "ICE DIVERGENCE [sec/sec]"}, + /* 99 */ {"var99", "undefined"}, + /* 100 */ {"shcw", "SIG HGT COM WAVE/SWELL [m]"}, + /* 101 */ {"wwdi", "DIRECTION OF WIND WAVE [deg]"}, + /* 102 */ {"wwsh", "SIG HGHT OF WIND WAVES [m]"}, + /* 103 */ {"wwmp", "MEAN PERIOD WIND WAVES [sec]"}, + /* 104 */ {"swdi", "DIRECTION OF SWELL WAVE [deg]"}, + /* 105 */ {"swsh", "SIG HEIGHT SWELL WAVES [m]"}, + /* 106 */ {"swmp", "MEAN PERIOD SWELL WAVES [sec]"}, + /* 107 */ {"prwd", "PRIMARY WAVE DIRECTION [deg]"}, + /* 108 */ {"prmp", "PRIM WAVE MEAN PERIOD [s]"}, + /* 109 */ {"swdi", "SECOND WAVE DIRECTION [deg]"}, + /* 110 */ {"swmp", "SECOND WAVE MEAN PERIOD [s]"}, + /* 111 */ {"ocas", "SHORT WAVE ABSORBED AT GROUND [W/m2]"}, + /* 112 */ {"slds", "NET LONG WAVE AT BOTTOM [W/m2]"}, + /* 113 */ {"nswr", "NET SHORT-WAV RAD(TOP) [W/m2]"}, + /* 114 */ {"role", "OUTGOING LONG WAVE AT TOP [W/m2]"}, + /* 115 */ {"lwrd", "LONG-WAV RAD [W/m2]"}, + /* 116 */ {"swea", "SHORT WAVE ABSORBED BY EARTH/ATMOSPHERE [W/m2]"}, + /* 117 */ {"glbr", "GLOBAL RADIATION [W/m2 ]"}, + /* 118 */ {"var118", "undefined"}, + /* 119 */ {"var119", "undefined"}, + /* 120 */ {"var120", "undefined"}, + /* 121 */ {"clsf", "LATENT HEAT FLUX FROM SURFACE [W/m2]"}, + /* 122 */ {"cssf", "SENSIBLE HEAT FLUX FROM SURFACE [W/m2]"}, + /* 123 */ {"blds", "BOUND LAYER DISSIPATION [W/m2]"}, + /* 124 */ {"var124", "undefined"}, + /* 125 */ {"var125", "undefined"}, + /* 126 */ {"var126", "undefined"}, + /* 127 */ {"imag", "IMAGE [image^data]"}, + /* 128 */ {"tp2m", "2 METRE TEMPERATURE [K]"}, + /* 129 */ {"dp2m", "2 METRE DEWPOINT TEMPERATURE [K]"}, + /* 130 */ {"u10m", "10 METRE U-WIND COMPONENT [m/s]"}, + /* 131 */ {"v10m", "10 METRE V-WIND COMPONENT [m/s]"}, + /* 132 */ {"topo", "TOPOGRAPHY [m]"}, + /* 133 */ {"gsfp", "GEOMETRIC MEAN SURFACE PRESSURE [hPa]"}, + /* 134 */ {"lnsp", "LN SURFACE PRESSURE [hPa]"}, + /* 135 */ {"pslc", "SURFACE PRESSURE [hPa]"}, + /* 136 */ {"pslm", "M S L PRESSURE (MESINGER METHOD) [hPa]"}, + /* 137 */ {"mask", "MASK [-/+]"}, + /* 138 */ {"mxwu", "MAXIMUM U-WIND [m/s]"}, + /* 139 */ {"mxwv", "MAXIMUM V-WIND [m/s]"}, + /* 140 */ {"cape", "CONVECTIVE AVAIL. POT.ENERGY [m2/s2]"}, + /* 141 */ {"cine", "CONVECTIVE INHIB. ENERGY [m2/s2]"}, + /* 142 */ {"lhcv", "CONVECTIVE LATENT HEATING [K/s]"}, + /* 143 */ {"mscv", "CONVECTIVE MOISTURE SOURCE [1/s]"}, + /* 144 */ {"scvm", "SHALLOW CONV. MOISTURE SOURCE [1/s]"}, + /* 145 */ {"scvh", "SHALLOW CONVECTIVE HEATING [K/s]"}, + /* 146 */ {"mxwp", "MAXIMUM WIND PRESS. LVL [hPa]"}, + /* 147 */ {"ustr", "STORM MOTION U-COMPONENT [m/s]"}, + /* 148 */ {"vstr", "STORM MOTION V-COMPONENT [m/s]"}, + /* 149 */ {"cbnt", "MEAN CLOUD COVER [0-1]"}, + /* 150 */ {"pcbs", "PRESSURE AT CLOUD BASE [hPa]"}, + /* 151 */ {"pctp", "PRESSURE AT CLOUD TOP [hPa]"}, + /* 152 */ {"fzht", "FREEZING LEVEL HEIGHT [m]"}, + /* 153 */ {"fzrh", "FREEZING LEVEL RELATIVE HUMIDITY [%]"}, + /* 154 */ {"fdlt", "FLIGHT LEVELS TEMPERATURE [K]"}, + /* 155 */ {"fdlu", "FLIGHT LEVELS U-WIND [m/s]"}, + /* 156 */ {"fdlv", "FLIGHT LEVELS V-WIND [m/s]"}, + /* 157 */ {"tppp", "TROPOPAUSE PRESSURE [hPa]"}, + /* 158 */ {"tppt", "TROPOPAUSE TEMPERATURE [K]"}, + /* 159 */ {"tppu", "TROPOPAUSE U-WIND COMPONENT [m/s]"}, + /* 160 */ {"tppv", "TROPOPAUSE v-WIND COMPONENT [m/s]"}, + /* 161 */ {"var161", "undefined"}, + /* 162 */ {"gvdu", "GRAVITY WAVE DRAG DU/DT [m/s2]"}, + /* 163 */ {"gvdv", "GRAVITY WAVE DRAG DV/DT [m/s2]"}, + /* 164 */ {"gvus", "GRAVITY WAVE DRAG SFC ZONAL STRESS [Pa]"}, + /* 165 */ {"gvvs", "GRAVITY WAVE DRAG SFC MERIDIONAL STRESS [Pa]"}, + /* 166 */ {"var166", "undefined"}, + /* 167 */ {"dvsh", "DIVERGENCE OF SPECIFIC HUMIDITY [1/s]"}, + /* 168 */ {"hmfc", "HORIZ. MOISTURE FLUX CONV. [1/s]"}, + /* 169 */ {"vmfl", "VERT. INTEGRATED MOISTURE FLUX CONV. [kg/(m2*s)]"}, + /* 170 */ {"vadv", "VERTICAL MOISTURE ADVECTION [kg/(kg*s)]"}, + /* 171 */ {"nhcm", "NEG. HUM. CORR. MOISTURE SOURCE [kg/(kg*s)]"}, + /* 172 */ {"lglh", "LARGE SCALE LATENT HEATING [K/s]"}, + /* 173 */ {"lgms", "LARGE SCALE MOISTURE SOURCE [1/s]"}, + /* 174 */ {"smav", "SOIL MOISTURE AVAILABILITY [0-1]"}, + /* 175 */ {"tgrz", "SOIL TEMPERATURE OF ROOT ZONE [K]"}, + /* 176 */ {"bslh", "BARE SOIL LATENT HEAT [Ws/m2]"}, + /* 177 */ {"evpp", "POTENTIAL SFC EVAPORATION [m]"}, + /* 178 */ {"rnof", "RUNOFF [kg/m2/s)]"}, + /* 179 */ {"pitp", "INTERCEPTION LOSS [W/m2]"}, + /* 180 */ {"vpca", "VAPOR PRESSURE OF CANOPY AIR SPACE [mb]"}, + /* 181 */ {"qsfc", "SURFACE SPEC HUMIDITY [kg/kg]"}, + /* 182 */ {"ussl", "SOIL WETNESS OF SURFACE [0-1]"}, + /* 183 */ {"uzrs", "SOIL WETNESS OF ROOT ZONE [0-1]"}, + /* 184 */ {"uzds", "SOIL WETNESS OF DRAINAGE ZONE [0-1]"}, + /* 185 */ {"amdl", "STORAGE ON CANOPY [m]"}, + /* 186 */ {"amsl", "STORAGE ON GROUND [m]"}, + /* 187 */ {"tsfc", "SURFACE TEMPERATURE [K]"}, + /* 188 */ {"tems", "SURFACE ABSOLUTE TEMPERATURE [K]"}, + /* 189 */ {"tcas", "TEMPERATURE OF CANOPY AIR SPACE [K]"}, + /* 190 */ {"ctmp", "TEMPERATURE AT CANOPY [K]"}, + /* 191 */ {"tgsc", "GROUND/SURFACE COVER TEMPERATURE [K]"}, + /* 192 */ {"uves", "SURFACE ZONAL WIND (U) [m/s]"}, + /* 193 */ {"usst", "SURFACE ZONAL WIND STRESS [Pa]"}, + /* 194 */ {"vves", "SURFACE MERIDIONAL WIND (V) [m/s]"}, + /* 195 */ {"vsst", "SURFACE MERIDIONAL WIND STRESS [Pa]"}, + /* 196 */ {"suvf", "SURFACE MOMENTUM FLUX [W/m2]"}, + /* 197 */ {"iswf", "INCIDENT SHORT WAVE FLUX [W/m2]"}, + /* 198 */ {"ghfl", "TIME AVE GROUND HT FLX [W/m2]"}, + /* 199 */ {"var199", "undefined"}, + /* 200 */ {"lwbc", "NET LONG WAVE AT BOTTOM (CLEAR) [W/m2]"}, + /* 201 */ {"lwtc", "OUTGOING LONG WAVE AT TOP (CLEAR) [W/m2]"}, + /* 202 */ {"swec", "SHORT WV ABSRBD BY EARTH/ATMOS (CLEAR) [W/m2]"}, + /* 203 */ {"ocac", "SHORT WAVE ABSORBED AT GROUND (CLEAR) [W/m2]"}, + /* 204 */ {"var204", "undefined"}, + /* 205 */ {"lwrh", "LONG WAVE RADIATIVE HEATING [K/s]"}, + /* 206 */ {"swrh", "SHORT WAVE RADIATIVE HEATING [K/s]"}, + /* 207 */ {"olis", "DOWNWARD LONG WAVE AT BOTTOM [W/m2]"}, + /* 208 */ {"olic", "DOWNWARD LONG WAVE AT BOTTOM (CLEAR) [W/m2]"}, + /* 209 */ {"ocis", "DOWNWARD SHORT WAVE AT GROUND [W/m2]"}, + /* 210 */ {"ocic", "DOWNWARD SHORT WAVE AT GROUND (CLEAR) [W/m2]"}, + /* 211 */ {"oles", "UPWARD LONG WAVE AT BOTTOM [W/m2]"}, + /* 212 */ {"oces", "UPWARD SHORT WAVE AT GROUND [W/m2]"}, + /* 213 */ {"swgc", "UPWARD SHORT WAVE AT GROUND (CLEAR) [W/m2]"}, + /* 214 */ {"roce", "UPWARD SHORT WAVE AT TOP [W/m2]"}, + /* 215 */ {"swtc", "UPWARD SHORT WAVE AT TOP (CLEAR) [W/m2]"}, + /* 216 */ {"var216", "undefined"}, + /* 217 */ {"var217", "undefined"}, + /* 218 */ {"hhdf", "HORIZONTAL HEATING DIFFUSION [K/s]"}, + /* 219 */ {"hmdf", "HORIZONTAL MOISTURE DIFFUSION [1/s]"}, + /* 220 */ {"hddf", "HORIZONTAL DIVERGENCE DIFFUSION [1/s2]"}, + /* 221 */ {"hvdf", "HORIZONTAL VORTICITY DIFFUSION [1/s2]"}, + /* 222 */ {"vdms", "VERTICAL DIFF. MOISTURE SOURCE [1/s]"}, + /* 223 */ {"vdfu", "VERTICAL DIFFUSION DU/DT [m/s2]"}, + /* 224 */ {"vdfv", "VERTICAL DIFFUSION DV/DT [m/s2]"}, + /* 225 */ {"vdfh", "VERTICAL DIFFUSION HEATING [K/s]"}, + /* 226 */ {"umrs", "SURFACE RELATIVE HUMIDITY [no Dim]"}, + /* 227 */ {"vdcc", "VERTICAL DIST TOTAL CLOUD COVER [no Dim]"}, + /* 228 */ {"var228", "undefined"}, + /* 229 */ {"var229", "undefined"}, + /* 230 */ {"usmt", "TIME MEAN SURFACE ZONAL WIND (U) [m/s]"}, + /* 231 */ {"vsmt", "TIME MEAN SURFACE MERIDIONAL WIND (V) [m/s]"}, + /* 232 */ {"tsmt", "TIME MEAN SURFACE ABSOLUTE TEMPERATURE [K]"}, + /* 233 */ {"rsmt", "TIME MEAN SURFACE RELATIVE HUMIDITY [no Dim]"}, + /* 234 */ {"atmt", "TIME MEAN ABSOLUTE TEMPERATURE [K]"}, + /* 235 */ {"stmt", "TIME MEAN DEEP SOIL TEMPERATURE [K]"}, + /* 236 */ {"ommt", "TIME MEAN DERIVED OMEGA [Pa/s]"}, + /* 237 */ {"dvmt", "TIME MEAN DIVERGENCE [1/s]"}, + /* 238 */ {"zhmt", "TIME MEAN GEOPOTENTIAL HEIGHT [m]"}, + /* 239 */ {"lnmt", "TIME MEAN LOG SURFACE PRESSURE [ln(cbar)]"}, + /* 240 */ {"mkmt", "TIME MEAN MASK [-/+]"}, + /* 241 */ {"vvmt", "TIME MEAN MERIDIONAL WIND (V) [m/s]"}, + /* 242 */ {"omtm", "TIME MEAN OMEGA [cbar/s]"}, + /* 243 */ {"ptmt", "TIME MEAN POTENTIAL TEMPERATURE [K]"}, + /* 244 */ {"pcmt", "TIME MEAN PRECIP. WATER [kg/m2]"}, + /* 245 */ {"rhmt", "TIME MEAN RELATIVE HUMIDITY [%]"}, + /* 246 */ {"mpmt", "TIME MEAN SEA LEVEL PRESSURE [hPa]"}, + /* 247 */ {"simt", "TIME MEAN SIGMADOT [1/s]"}, + /* 248 */ {"uemt", "TIME MEAN SPECIFIC HUMIDITY [kg/kg]"}, + /* 249 */ {"fcmt", "TIME MEAN STREAM FUNCTION| m2/s]"}, + /* 250 */ {"psmt", "TIME MEAN SURFACE PRESSURE [hPa]"}, + /* 251 */ {"tmmt", "TIME MEAN SURFACE TEMPERATURE [K]"}, + /* 252 */ {"pvmt", "TIME MEAN VELOCITY POTENTIAL [m2/s]"}, + /* 253 */ {"tvmt", "TIME MEAN VIRTUAL TEMPERATURE [K]"}, + /* 254 */ {"vtmt", "TIME MEAN VORTICITY [1/s]"}, + /* 255 */ {"uvmt", "TIME MEAN ZONAL WIND (U) [m/s]"}, }; const struct ParmTable parm_table_jra55_200[256] = { - /* 0 */ {"var0", "undefined"}, - /* 1 */ {"PRES", "Pressure [Pa]"}, - /* 2 */ {"PRMSL", "Pressure reduced to MSL [Pa]"}, - /* 3 */ {"var3", "undefined"}, - /* 4 */ {"pVOR", "Potential vorticity [K*m^2/kg/s]"}, - /* 5 */ {"var5", "undefined"}, - /* 6 */ {"GP", "Geopotential [m^2/s^2]"}, - /* 7 */ {"HGT", "Geopotential height [gpm]"}, - /* 8 */ {"var8", "undefined"}, - /* 9 */ {"var9", "undefined"}, - /* 10 */ {"TOZNE", "Total ozone [Dobson]"}, - /* 11 */ {"TMP", "Temperature [K]"}, - /* 12 */ {"var12", "undefined"}, - /* 13 */ {"POT", "Potential temperature [K]"}, - /* 14 */ {"var14", "undefined"}, - /* 15 */ {"TMAX", "Maximum temperature [K]"}, - /* 16 */ {"TMIN", "Minimum temperature [K]"}, - /* 17 */ {"var17", "undefined"}, - /* 18 */ {"DEPR", "Dew-point depression [K]"}, - /* 19 */ {"var19", "undefined"}, - /* 20 */ {"var20", "undefined"}, - /* 21 */ {"var21", "undefined"}, - /* 22 */ {"var22", "undefined"}, - /* 23 */ {"var23", "undefined"}, - /* 24 */ {"var24", "undefined"}, - /* 25 */ {"var25", "undefined"}, - /* 26 */ {"var26", "undefined"}, - /* 27 */ {"var27", "undefined"}, - /* 28 */ {"var28", "undefined"}, - /* 29 */ {"var29", "undefined"}, - /* 30 */ {"var30", "undefined"}, - /* 31 */ {"var31", "undefined"}, - /* 32 */ {"var32", "undefined"}, - /* 33 */ {"UGRD", "u-component of wind [m/s]"}, - /* 34 */ {"VGRD", "v-component of wind [m/s]"}, - /* 35 */ {"STRM", "Stream function [m^2/s]"}, - /* 36 */ {"VPOT", "Velocity potential [m^2/s]"}, - /* 37 */ {"MNTSF", "Montgomery stream function [m^2/s^2]"}, - /* 38 */ {"var38", "undefined"}, - /* 39 */ {"VVEL", "Vertical velocity [Pa/s]"}, - /* 40 */ {"var40", "undefined"}, - /* 41 */ {"var41", "undefined"}, - /* 42 */ {"var42", "undefined"}, - /* 43 */ {"RELV", "Relative vorticity [1/s]"}, - /* 44 */ {"RELD", "Relative divergence [1/s]"}, - /* 45 */ {"var45", "undefined"}, - /* 46 */ {"var46", "undefined"}, - /* 47 */ {"var47", "undefined"}, - /* 48 */ {"var48", "undefined"}, - /* 49 */ {"var49", "undefined"}, - /* 50 */ {"var50", "undefined"}, - /* 51 */ {"SPFH", "Specific humidity [kg/kg]"}, - /* 52 */ {"RH", "Relative humidity [%]"}, - /* 53 */ {"var53", "undefined"}, - /* 54 */ {"PWAT", "Precipitable water [kg/m^2]"}, - /* 55 */ {"var55", "undefined"}, - /* 56 */ {"var56", "undefined"}, - /* 57 */ {"EVP", "Evaporation [mm/day]"}, - /* 58 */ {"CICE", "Cloud ice [kg/m^2]"}, - /* 59 */ {"var59", "undefined"}, - /* 60 */ {"var60", "undefined"}, - /* 61 */ {"TPRAT", "Total precipitation [mm/day]"}, - /* 62 */ {"LPRAT", "Large scale precipitation [mm/day]"}, - /* 63 */ {"CPRAT", "Convective precipitation [mm/day]"}, - /* 64 */ {"SRWEQ", "Snowfall rate water equivalent [mm/day]"}, - /* 65 */ {"SnWe", "Water equivalent of accumulated snow depth [kg/m^2]"}, - /* 66 */ {"SnowD", "Snow depth [m]"}, - /* 67 */ {"var67", "undefined"}, - /* 68 */ {"var68", "undefined"}, - /* 69 */ {"var69", "undefined"}, - /* 70 */ {"var70", "undefined"}, - /* 71 */ {"TCDC", "Total cloud cover [%]"}, - /* 72 */ {"var72", "undefined"}, - /* 73 */ {"LCDC", "Low cloud cover [%]"}, - /* 74 */ {"MCDC", "Medium cloud cover [%]"}, - /* 75 */ {"HCDC", "High cloud cover [%]"}, - /* 76 */ {"var76", "undefined"}, - /* 77 */ {"var77", "undefined"}, - /* 78 */ {"var78", "undefined"}, - /* 79 */ {"var79", "undefined"}, - /* 80 */ {"var80", "undefined"}, - /* 81 */ {"LAND", "Land cover (1 = land, 0 = sea) [Proportion]"}, - /* 82 */ {"var82", "undefined"}, - /* 83 */ {"SFCR", "Surface roughness [m]"}, - /* 84 */ {"var84", "undefined"}, - /* 85 */ {"SoilT", "Soil temperature [K]"}, - /* 86 */ {"var86", "undefined"}, - /* 87 */ {"var87", "undefined"}, - /* 88 */ {"var88", "undefined"}, - /* 89 */ {"var89", "undefined"}, - /* 90 */ {"ROF", "Water run-off [mm/day]"}, - /* 91 */ {"ICEC", "Ice cover (1 = ice, 0 = no ice) [Proportion]"}, - /* 92 */ {"var92", "undefined"}, - /* 93 */ {"var93", "undefined"}, - /* 94 */ {"var94", "undefined"}, - /* 95 */ {"var95", "undefined"}, - /* 96 */ {"var96", "undefined"}, - /* 97 */ {"var97", "undefined"}, - /* 98 */ {"var98", "undefined"}, - /* 99 */ {"var99", "undefined"}, - /* 100 */ {"var100", "undefined"}, - /* 101 */ {"var101", "undefined"}, - /* 102 */ {"var102", "undefined"}, - /* 103 */ {"var103", "undefined"}, - /* 104 */ {"var104", "undefined"}, - /* 105 */ {"var105", "undefined"}, - /* 106 */ {"var106", "undefined"}, - /* 107 */ {"var107", "undefined"}, - /* 108 */ {"var108", "undefined"}, - /* 109 */ {"var109", "undefined"}, - /* 110 */ {"var110", "undefined"}, - /* 111 */ {"var111", "undefined"}, - /* 112 */ {"var112", "undefined"}, - /* 113 */ {"var113", "undefined"}, - /* 114 */ {"var114", "undefined"}, - /* 115 */ {"var115", "undefined"}, - /* 116 */ {"var116", "undefined"}, - /* 117 */ {"var117", "undefined"}, - /* 118 */ {"BRTMP", "Brightness temperature [K]"}, - /* 119 */ {"var119", "undefined"}, - /* 120 */ {"var120", "undefined"}, - /* 121 */ {"LHTFL", "Latent heat flux [W/m^2]"}, - /* 122 */ {"SHTFL", "Sensible heat flux [W/m^2]"}, - /* 123 */ {"var123", "undefined"}, - /* 124 */ {"UFLX", "Momentum flux, u-component [N/m^2]"}, - /* 125 */ {"VFLX", "Momentum flux, v-component [N/m^2]"}, - /* 126 */ {"var126", "undefined"}, - /* 127 */ {"var127", "undefined"}, - /* 128 */ {"var128", "undefined"}, - /* 129 */ {"var129", "undefined"}, - /* 130 */ {"var130", "undefined"}, - /* 131 */ {"var131", "undefined"}, - /* 132 */ {"BVF2", "Square of Brunt-Vaisala frequency [1/s^2]"}, - /* 133 */ {"var133", "undefined"}, - /* 134 */ {"var134", "undefined"}, - /* 135 */ {"var135", "undefined"}, - /* 136 */ {"var136", "undefined"}, - /* 137 */ {"var137", "undefined"}, - /* 138 */ {"var138", "undefined"}, - /* 139 */ {"var139", "undefined"}, - /* 140 */ {"var140", "undefined"}, - /* 141 */ {"var141", "undefined"}, - /* 142 */ {"var142", "undefined"}, - /* 143 */ {"var143", "undefined"}, - /* 144 */ {"TSC", "Canopy temperature [K]"}, - /* 145 */ {"TSG", "Ground temperature [K]"}, - /* 146 */ {"CWORK", "Cloud work function [J/kg]"}, - /* 147 */ {"FGLU", "Zonal momentum flux by long gravity wave [N/m^2]"}, - /* 148 */ {"FGLV", "Meridional momentum flux by long gravity wave [N/m^2]"}, - /* 149 */ {"var149", "undefined"}, - /* 150 */ {"var150", "undefined"}, - /* 151 */ {"ADUA", "Adiabatic zonal acceleration [m/s/day]"}, - /* 152 */ {"VWV", "Meridional water vapour flux [Kg/m/s]"}, - /* 153 */ {"var153", "undefined"}, - /* 154 */ {"FGSV", "Meridional momentum flux by short gravity wave [N/m^2]"}, - /* 155 */ {"GFLX", "Ground heat flux [W/m^2]"}, - /* 156 */ {"var156", "undefined"}, - /* 157 */ {"UWV", "Zonal water vapour flux [kg/m/s]"}, - /* 158 */ {"var158", "undefined"}, - /* 159 */ {"FGSU", "Zonal momentum flux by short gravity wave [N/m^2]"}, - /* 160 */ {"CSUSF", "Clear sky upward solar radiation flux [W/m^2]"}, - /* 161 */ {"CSDSF", "Clear sky downward solar radiation flux [W/m^2]"}, - /* 162 */ {"CSULF", "Clear sky upward long wave radiation flux [W/m^2]"}, - /* 163 */ {"CSDLF", "Clear sky downward long wave radiation flux [W/m^2]"}, - /* 164 */ {"var164", "undefined"}, - /* 165 */ {"ADVA", "Adiabatic meridional acceleration [m/s/day]"}, - /* 166 */ {"var166", "undefined"}, - /* 167 */ {"var167", "undefined"}, - /* 168 */ {"var168", "undefined"}, - /* 169 */ {"var169", "undefined"}, - /* 170 */ {"FRCV", "Frequency of deep convection [%]"}, - /* 171 */ {"FRCVS", "Frequency of shallow convection [%]"}, - /* 172 */ {"FRSC", "Frequency of stratocumulus parameterisation [%]"}, - /* 173 */ {"GWDUA", "Gravity wave zonal acceleration [m/s/day]"}, - /* 174 */ {"GWDVA", "Gravity wave meridional acceleration [m/s/day]"}, - /* 175 */ {"var175", "undefined"}, - /* 176 */ {"var176", "undefined"}, - /* 177 */ {"var177", "undefined"}, - /* 178 */ {"var178", "undefined"}, - /* 179 */ {"var179", "undefined"}, - /* 180 */ {"var180", "undefined"}, - /* 181 */ {"var181", "undefined"}, - /* 182 */ {"var182", "undefined"}, - /* 183 */ {"var183", "undefined"}, - /* 184 */ {"var184", "undefined"}, - /* 185 */ {"var185", "undefined"}, - /* 186 */ {"var186", "undefined"}, - /* 187 */ {"var187", "undefined"}, - /* 188 */ {"var188", "undefined"}, - /* 189 */ {"var189", "undefined"}, - /* 190 */ {"UTHE", "Zonal thermal energy flux [W/m]"}, - /* 191 */ {"VTHE", "Meridional thermal energy flux [W/m]"}, - /* 192 */ {"var192", "undefined"}, - /* 193 */ {"var193", "undefined"}, - /* 194 */ {"var194", "undefined"}, - /* 195 */ {"var195", "undefined"}, - /* 196 */ {"var196", "undefined"}, - /* 197 */ {"var197", "undefined"}, - /* 198 */ {"var198", "undefined"}, - /* 199 */ {"var199", "undefined"}, - /* 200 */ {"var200", "undefined"}, - /* 201 */ {"var201", "undefined"}, - /* 202 */ {"LTRS", "Evapotranspiration [W/m^2]"}, - /* 203 */ {"LINT", "Interception loss [W/m^2]"}, - /* 204 */ {"DSWRF", "Downward solar radiation flux [W/m^2]"}, - /* 205 */ {"DLWRF", "Downward long wave radiation flux [W/m^2]"}, - /* 206 */ {"var206", "undefined"}, - /* 207 */ {"var207", "undefined"}, - /* 208 */ {"var208", "undefined"}, - /* 209 */ {"var209", "undefined"}, - /* 210 */ {"var210", "undefined"}, - /* 211 */ {"USWRF", "Upward solar radiation flux [W/m^2]"}, - /* 212 */ {"ULWRF", "Upward long wave radiation flux [W/m^2]"}, - /* 213 */ {"var213", "undefined"}, - /* 214 */ {"var214", "undefined"}, - /* 215 */ {"var215", "undefined"}, - /* 216 */ {"var216", "undefined"}, - /* 217 */ {"var217", "undefined"}, - /* 218 */ {"var218", "undefined"}, - /* 219 */ {"WSMX", "Maximum wind speed [m/s]"}, - /* 220 */ {"var220", "undefined"}, - /* 221 */ {"CWAT", "Cloud water [kg/kg]"}, - /* 222 */ {"ADHR", "Adiabatic heating rate [K/day]"}, - /* 223 */ {"MSC", "Moisture storage on canopy [m]"}, - /* 224 */ {"MSG", "Moisture storage on ground/cover [m]"}, - /* 225 */ {"SoilW", "Soil wetness [Proportion]"}, - /* 226 */ {"SMC", "Mass concentration of condensed water in soil [kg/m^3]"}, - /* 227 */ {"CW", "Cloud liquid water [kg/m^2]"}, - /* 228 */ {"CLWC", "Cloud liquid water [kg/kg]"}, - /* 229 */ {"CIWC", "Cloud ice [kg/kg]"}, - /* 230 */ {"MFLXB", "Upward mass flux at cloud base [kg/m^2/s]"}, - /* 231 */ {"MFLUX", "Upward mass flux [kg/m^2/s]"}, - /* 232 */ {"var232", "undefined"}, - /* 233 */ {"var233", "undefined"}, - /* 234 */ {"var234", "undefined"}, - /* 235 */ {"var235", "undefined"}, - /* 236 */ {"ADMR", "Adiabatic moistening rate [kg/kg/day]"}, - /* 237 */ {"OZONE", "Ozone mixing ratio [mg/kg]"}, - /* 238 */ {"var238", "undefined"}, - /* 239 */ {"CNVUA", "Convective zonal acceleration [m/s/day]"}, - /* 240 */ {"CNVVA", "Convective meridional acceleration [m/s/day]"}, - /* 241 */ {"LRGHR", "Large scale condensation heating rate [K/day]"}, - /* 242 */ {"CNVHR", "Convective heating rate [k/day]"}, - /* 243 */ {"CNVMR", "Convective moistening rate [kg/kg/day]"}, - /* 244 */ {"var244", "undefined"}, - /* 245 */ {"var245", "undefined"}, - /* 246 */ {"VDFHR", "Vertical diffusion heating rate [K/day]"}, - /* 247 */ {"VDFUA", "Vertical diffusion zonal acceleration [m/s/day]"}, - /* 248 */ {"VDFVA", "Vertical diffusion meridional acceleration [m/s/day]"}, - /* 249 */ {"VDFMR", "Vertical diffusion moistening rate [kg/kg/day]"}, - /* 250 */ {"SWHR", "Solar radiative heating rate [k/day]"}, - /* 251 */ {"LWHR", "Long wave radiative heating rate [K/day]"}, - /* 252 */ {"VTYPE", "Type of vegetation"}, - /* 253 */ {"LRGMR", "Large scale moistening rate [kg/kg/day]"}, - /* 254 */ {"var254", "undefined"}, - /* 255 */ {"var255", "undefined"}, + /* 0 */ {"var0", "undefined"}, + /* 1 */ {"PRES", "Pressure [Pa]"}, + /* 2 */ {"PRMSL", "Pressure reduced to MSL [Pa]"}, + /* 3 */ {"var3", "undefined"}, + /* 4 */ {"pVOR", "Potential vorticity [K*m^2/kg/s]"}, + /* 5 */ {"var5", "undefined"}, + /* 6 */ {"GP", "Geopotential [m^2/s^2]"}, + /* 7 */ {"HGT", "Geopotential height [gpm]"}, + /* 8 */ {"var8", "undefined"}, + /* 9 */ {"var9", "undefined"}, + /* 10 */ {"TOZNE", "Total ozone [Dobson]"}, + /* 11 */ {"TMP", "Temperature [K]"}, + /* 12 */ {"var12", "undefined"}, + /* 13 */ {"POT", "Potential temperature [K]"}, + /* 14 */ {"var14", "undefined"}, + /* 15 */ {"TMAX", "Maximum temperature [K]"}, + /* 16 */ {"TMIN", "Minimum temperature [K]"}, + /* 17 */ {"var17", "undefined"}, + /* 18 */ {"DEPR", "Dew-point depression [K]"}, + /* 19 */ {"var19", "undefined"}, + /* 20 */ {"var20", "undefined"}, + /* 21 */ {"var21", "undefined"}, + /* 22 */ {"var22", "undefined"}, + /* 23 */ {"var23", "undefined"}, + /* 24 */ {"var24", "undefined"}, + /* 25 */ {"var25", "undefined"}, + /* 26 */ {"var26", "undefined"}, + /* 27 */ {"var27", "undefined"}, + /* 28 */ {"var28", "undefined"}, + /* 29 */ {"var29", "undefined"}, + /* 30 */ {"var30", "undefined"}, + /* 31 */ {"var31", "undefined"}, + /* 32 */ {"var32", "undefined"}, + /* 33 */ {"UGRD", "u-component of wind [m/s]"}, + /* 34 */ {"VGRD", "v-component of wind [m/s]"}, + /* 35 */ {"STRM", "Stream function [m^2/s]"}, + /* 36 */ {"VPOT", "Velocity potential [m^2/s]"}, + /* 37 */ {"MNTSF", "Montgomery stream function [m^2/s^2]"}, + /* 38 */ {"var38", "undefined"}, + /* 39 */ {"VVEL", "Vertical velocity [Pa/s]"}, + /* 40 */ {"var40", "undefined"}, + /* 41 */ {"var41", "undefined"}, + /* 42 */ {"var42", "undefined"}, + /* 43 */ {"RELV", "Relative vorticity [1/s]"}, + /* 44 */ {"RELD", "Relative divergence [1/s]"}, + /* 45 */ {"var45", "undefined"}, + /* 46 */ {"var46", "undefined"}, + /* 47 */ {"var47", "undefined"}, + /* 48 */ {"var48", "undefined"}, + /* 49 */ {"var49", "undefined"}, + /* 50 */ {"var50", "undefined"}, + /* 51 */ {"SPFH", "Specific humidity [kg/kg]"}, + /* 52 */ {"RH", "Relative humidity [%]"}, + /* 53 */ {"var53", "undefined"}, + /* 54 */ {"PWAT", "Precipitable water [kg/m^2]"}, + /* 55 */ {"var55", "undefined"}, + /* 56 */ {"var56", "undefined"}, + /* 57 */ {"EVP", "Evaporation [mm/day]"}, + /* 58 */ {"CICE", "Cloud ice [kg/m^2]"}, + /* 59 */ {"var59", "undefined"}, + /* 60 */ {"var60", "undefined"}, + /* 61 */ {"TPRAT", "Total precipitation [mm/day]"}, + /* 62 */ {"LPRAT", "Large scale precipitation [mm/day]"}, + /* 63 */ {"CPRAT", "Convective precipitation [mm/day]"}, + /* 64 */ {"SRWEQ", "Snowfall rate water equivalent [mm/day]"}, + /* 65 */ {"SnWe", "Water equivalent of accumulated snow depth [kg/m^2]"}, + /* 66 */ {"SnowD", "Snow depth [m]"}, + /* 67 */ {"var67", "undefined"}, + /* 68 */ {"var68", "undefined"}, + /* 69 */ {"var69", "undefined"}, + /* 70 */ {"var70", "undefined"}, + /* 71 */ {"TCDC", "Total cloud cover [%]"}, + /* 72 */ {"var72", "undefined"}, + /* 73 */ {"LCDC", "Low cloud cover [%]"}, + /* 74 */ {"MCDC", "Medium cloud cover [%]"}, + /* 75 */ {"HCDC", "High cloud cover [%]"}, + /* 76 */ {"var76", "undefined"}, + /* 77 */ {"var77", "undefined"}, + /* 78 */ {"var78", "undefined"}, + /* 79 */ {"var79", "undefined"}, + /* 80 */ {"var80", "undefined"}, + /* 81 */ {"LAND", "Land cover (1 = land, 0 = sea) [Proportion]"}, + /* 82 */ {"var82", "undefined"}, + /* 83 */ {"SFCR", "Surface roughness [m]"}, + /* 84 */ {"var84", "undefined"}, + /* 85 */ {"SoilT", "Soil temperature [K]"}, + /* 86 */ {"var86", "undefined"}, + /* 87 */ {"var87", "undefined"}, + /* 88 */ {"var88", "undefined"}, + /* 89 */ {"var89", "undefined"}, + /* 90 */ {"ROF", "Water run-off [mm/day]"}, + /* 91 */ {"ICEC", "Ice cover (1 = ice, 0 = no ice) [Proportion]"}, + /* 92 */ {"var92", "undefined"}, + /* 93 */ {"var93", "undefined"}, + /* 94 */ {"var94", "undefined"}, + /* 95 */ {"var95", "undefined"}, + /* 96 */ {"var96", "undefined"}, + /* 97 */ {"var97", "undefined"}, + /* 98 */ {"var98", "undefined"}, + /* 99 */ {"var99", "undefined"}, + /* 100 */ {"var100", "undefined"}, + /* 101 */ {"var101", "undefined"}, + /* 102 */ {"var102", "undefined"}, + /* 103 */ {"var103", "undefined"}, + /* 104 */ {"var104", "undefined"}, + /* 105 */ {"var105", "undefined"}, + /* 106 */ {"var106", "undefined"}, + /* 107 */ {"var107", "undefined"}, + /* 108 */ {"var108", "undefined"}, + /* 109 */ {"var109", "undefined"}, + /* 110 */ {"var110", "undefined"}, + /* 111 */ {"var111", "undefined"}, + /* 112 */ {"var112", "undefined"}, + /* 113 */ {"var113", "undefined"}, + /* 114 */ {"var114", "undefined"}, + /* 115 */ {"var115", "undefined"}, + /* 116 */ {"var116", "undefined"}, + /* 117 */ {"var117", "undefined"}, + /* 118 */ {"BRTMP", "Brightness temperature [K]"}, + /* 119 */ {"var119", "undefined"}, + /* 120 */ {"var120", "undefined"}, + /* 121 */ {"LHTFL", "Latent heat flux [W/m^2]"}, + /* 122 */ {"SHTFL", "Sensible heat flux [W/m^2]"}, + /* 123 */ {"var123", "undefined"}, + /* 124 */ {"UFLX", "Momentum flux, u-component [N/m^2]"}, + /* 125 */ {"VFLX", "Momentum flux, v-component [N/m^2]"}, + /* 126 */ {"var126", "undefined"}, + /* 127 */ {"var127", "undefined"}, + /* 128 */ {"var128", "undefined"}, + /* 129 */ {"var129", "undefined"}, + /* 130 */ {"var130", "undefined"}, + /* 131 */ {"var131", "undefined"}, + /* 132 */ {"BVF2", "Square of Brunt-Vaisala frequency [1/s^2]"}, + /* 133 */ {"var133", "undefined"}, + /* 134 */ {"var134", "undefined"}, + /* 135 */ {"var135", "undefined"}, + /* 136 */ {"var136", "undefined"}, + /* 137 */ {"var137", "undefined"}, + /* 138 */ {"var138", "undefined"}, + /* 139 */ {"var139", "undefined"}, + /* 140 */ {"var140", "undefined"}, + /* 141 */ {"var141", "undefined"}, + /* 142 */ {"var142", "undefined"}, + /* 143 */ {"var143", "undefined"}, + /* 144 */ {"TSC", "Canopy temperature [K]"}, + /* 145 */ {"TSG", "Ground temperature [K]"}, + /* 146 */ {"CWORK", "Cloud work function [J/kg]"}, + /* 147 */ {"FGLU", "Zonal momentum flux by long gravity wave [N/m^2]"}, + /* 148 */ {"FGLV", "Meridional momentum flux by long gravity wave [N/m^2]"}, + /* 149 */ {"var149", "undefined"}, + /* 150 */ {"var150", "undefined"}, + /* 151 */ {"ADUA", "Adiabatic zonal acceleration [m/s/day]"}, + /* 152 */ {"VWV", "Meridional water vapour flux [Kg/m/s]"}, + /* 153 */ {"var153", "undefined"}, + /* 154 */ {"FGSV", "Meridional momentum flux by short gravity wave [N/m^2]"}, + /* 155 */ {"GFLX", "Ground heat flux [W/m^2]"}, + /* 156 */ {"var156", "undefined"}, + /* 157 */ {"UWV", "Zonal water vapour flux [kg/m/s]"}, + /* 158 */ {"var158", "undefined"}, + /* 159 */ {"FGSU", "Zonal momentum flux by short gravity wave [N/m^2]"}, + /* 160 */ {"CSUSF", "Clear sky upward solar radiation flux [W/m^2]"}, + /* 161 */ {"CSDSF", "Clear sky downward solar radiation flux [W/m^2]"}, + /* 162 */ {"CSULF", "Clear sky upward long wave radiation flux [W/m^2]"}, + /* 163 */ {"CSDLF", "Clear sky downward long wave radiation flux [W/m^2]"}, + /* 164 */ {"var164", "undefined"}, + /* 165 */ {"ADVA", "Adiabatic meridional acceleration [m/s/day]"}, + /* 166 */ {"var166", "undefined"}, + /* 167 */ {"var167", "undefined"}, + /* 168 */ {"var168", "undefined"}, + /* 169 */ {"var169", "undefined"}, + /* 170 */ {"FRCV", "Frequency of deep convection [%]"}, + /* 171 */ {"FRCVS", "Frequency of shallow convection [%]"}, + /* 172 */ {"FRSC", "Frequency of stratocumulus parameterisation [%]"}, + /* 173 */ {"GWDUA", "Gravity wave zonal acceleration [m/s/day]"}, + /* 174 */ {"GWDVA", "Gravity wave meridional acceleration [m/s/day]"}, + /* 175 */ {"var175", "undefined"}, + /* 176 */ {"var176", "undefined"}, + /* 177 */ {"var177", "undefined"}, + /* 178 */ {"var178", "undefined"}, + /* 179 */ {"var179", "undefined"}, + /* 180 */ {"var180", "undefined"}, + /* 181 */ {"var181", "undefined"}, + /* 182 */ {"var182", "undefined"}, + /* 183 */ {"var183", "undefined"}, + /* 184 */ {"var184", "undefined"}, + /* 185 */ {"var185", "undefined"}, + /* 186 */ {"var186", "undefined"}, + /* 187 */ {"var187", "undefined"}, + /* 188 */ {"var188", "undefined"}, + /* 189 */ {"var189", "undefined"}, + /* 190 */ {"UTHE", "Zonal thermal energy flux [W/m]"}, + /* 191 */ {"VTHE", "Meridional thermal energy flux [W/m]"}, + /* 192 */ {"var192", "undefined"}, + /* 193 */ {"var193", "undefined"}, + /* 194 */ {"var194", "undefined"}, + /* 195 */ {"var195", "undefined"}, + /* 196 */ {"var196", "undefined"}, + /* 197 */ {"var197", "undefined"}, + /* 198 */ {"var198", "undefined"}, + /* 199 */ {"var199", "undefined"}, + /* 200 */ {"var200", "undefined"}, + /* 201 */ {"var201", "undefined"}, + /* 202 */ {"LTRS", "Evapotranspiration [W/m^2]"}, + /* 203 */ {"LINT", "Interception loss [W/m^2]"}, + /* 204 */ {"DSWRF", "Downward solar radiation flux [W/m^2]"}, + /* 205 */ {"DLWRF", "Downward long wave radiation flux [W/m^2]"}, + /* 206 */ {"var206", "undefined"}, + /* 207 */ {"var207", "undefined"}, + /* 208 */ {"var208", "undefined"}, + /* 209 */ {"var209", "undefined"}, + /* 210 */ {"var210", "undefined"}, + /* 211 */ {"USWRF", "Upward solar radiation flux [W/m^2]"}, + /* 212 */ {"ULWRF", "Upward long wave radiation flux [W/m^2]"}, + /* 213 */ {"var213", "undefined"}, + /* 214 */ {"var214", "undefined"}, + /* 215 */ {"var215", "undefined"}, + /* 216 */ {"var216", "undefined"}, + /* 217 */ {"var217", "undefined"}, + /* 218 */ {"var218", "undefined"}, + /* 219 */ {"WSMX", "Maximum wind speed [m/s]"}, + /* 220 */ {"var220", "undefined"}, + /* 221 */ {"CWAT", "Cloud water [kg/kg]"}, + /* 222 */ {"ADHR", "Adiabatic heating rate [K/day]"}, + /* 223 */ {"MSC", "Moisture storage on canopy [m]"}, + /* 224 */ {"MSG", "Moisture storage on ground/cover [m]"}, + /* 225 */ {"SoilW", "Soil wetness [Proportion]"}, + /* 226 */ {"SMC", "Mass concentration of condensed water in soil [kg/m^3]"}, + /* 227 */ {"CW", "Cloud liquid water [kg/m^2]"}, + /* 228 */ {"CLWC", "Cloud liquid water [kg/kg]"}, + /* 229 */ {"CIWC", "Cloud ice [kg/kg]"}, + /* 230 */ {"MFLXB", "Upward mass flux at cloud base [kg/m^2/s]"}, + /* 231 */ {"MFLUX", "Upward mass flux [kg/m^2/s]"}, + /* 232 */ {"var232", "undefined"}, + /* 233 */ {"var233", "undefined"}, + /* 234 */ {"var234", "undefined"}, + /* 235 */ {"var235", "undefined"}, + /* 236 */ {"ADMR", "Adiabatic moistening rate [kg/kg/day]"}, + /* 237 */ {"OZONE", "Ozone mixing ratio [mg/kg]"}, + /* 238 */ {"var238", "undefined"}, + /* 239 */ {"CNVUA", "Convective zonal acceleration [m/s/day]"}, + /* 240 */ {"CNVVA", "Convective meridional acceleration [m/s/day]"}, + /* 241 */ {"LRGHR", "Large scale condensation heating rate [K/day]"}, + /* 242 */ {"CNVHR", "Convective heating rate [k/day]"}, + /* 243 */ {"CNVMR", "Convective moistening rate [kg/kg/day]"}, + /* 244 */ {"var244", "undefined"}, + /* 245 */ {"var245", "undefined"}, + /* 246 */ {"VDFHR", "Vertical diffusion heating rate [K/day]"}, + /* 247 */ {"VDFUA", "Vertical diffusion zonal acceleration [m/s/day]"}, + /* 248 */ {"VDFVA", "Vertical diffusion meridional acceleration [m/s/day]"}, + /* 249 */ {"VDFMR", "Vertical diffusion moistening rate [kg/kg/day]"}, + /* 250 */ {"SWHR", "Solar radiative heating rate [k/day]"}, + /* 251 */ {"LWHR", "Long wave radiative heating rate [K/day]"}, + /* 252 */ {"VTYPE", "Type of vegetation"}, + /* 253 */ {"LRGMR", "Large scale moistening rate [kg/kg/day]"}, + /* 254 */ {"var254", "undefined"}, + /* 255 */ {"var255", "undefined"}, }; /* @@ -13664,11 +13666,11 @@ int BDS_NValues(unsigned char *bds) { int i = 0; if (BDS_SimplePacking(bds) && BDS_Grid(bds)) { - i = ((BDS_LEN(bds) - BDS_DataStart(bds))*8 - - BDS_UnusedBits(bds)) / (BDS_NumBits(bds)); + i = ((BDS_LEN(bds) - BDS_DataStart(bds))*8 - + BDS_UnusedBits(bds)) / (BDS_NumBits(bds)); } else if (BDS_ComplexPacking(bds) && BDS_Grid(bds)) { - i = BDS_P2(bds); + i = BDS_P2(bds); } return i; } From c5393a734db2a37ed8242baa5952b9029c3fd9a6 Mon Sep 17 00:00:00 2001 From: AlysonStahl-NOAA <166434581+AlysonStahl-NOAA@users.noreply.github.com> Date: Fri, 18 Oct 2024 10:41:50 -0700 Subject: [PATCH 2/2] added test --- tests/CMakeLists.txt | 8 +++++++- tests/data/ref_ecmwf.jul.grb1 | Bin 0 -> 520002 bytes tests/data/ref_ecmwf.jul.grb1.inv | 1 + tests/run_wgrib_tests.sh | 15 +++++++++++++++ 4 files changed, 23 insertions(+), 1 deletion(-) create mode 100644 tests/data/ref_ecmwf.jul.grb1 create mode 100644 tests/data/ref_ecmwf.jul.grb1.inv create mode 100644 tests/run_wgrib_tests.sh diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt index d14fced4..c3851ced 100644 --- a/tests/CMakeLists.txt +++ b/tests/CMakeLists.txt @@ -110,7 +110,6 @@ copy_test_data(ref_new_grid_gdt_32769.grib2) copy_test_data(png_4bits.png) copy_test_data(large_png.grb2) - # Run these shell tests. shell_test(run_wgrib2_tests) shell_test(run_wgrib2_rpn_tests) @@ -126,6 +125,13 @@ if (USE_NETCDF) copy_test_data(ref_tablenc.gdas.t12z.pgrb2.1p00.anl.75r.grib2.txt) copy_test_data(nctab.table) endif() + +if (BUILD_WGRIB) + shell_test(run_wgrib_tests) + copy_test_data(ref_ecmwf.jul.grb1) + copy_test_data(ref_ecmwf.jul.grb1.inv) +endif() + if (USE_IPOLATES) shell_test(run_ipolates_tests) copy_test_data(ref_new_grid_gdas.t12z.pgrb2.1p00.anl.75r.grib2.txt) diff --git a/tests/data/ref_ecmwf.jul.grb1 b/tests/data/ref_ecmwf.jul.grb1 new file mode 100644 index 0000000000000000000000000000000000000000..1490e4974275c0bd7c414d6838ee5e7fb0fc5845 GIT binary patch literal 520002 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�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%0A+9;e`BrCA1hdc+fm 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ϥpzhp83^7uE~ZLH|35Q?0+9<_8rimwrG^?xJM&s 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Đ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 literal 0 HcmV?d00001 diff --git a/tests/data/ref_ecmwf.jul.grb1.inv b/tests/data/ref_ecmwf.jul.grb1.inv new file mode 100644 index 00000000..57900e0c --- /dev/null +++ b/tests/data/ref_ecmwf.jul.grb1.inv @@ -0,0 +1 @@ +1:0:d=21060500:TP:kpds5=228:kpds6=1:kpds7=0:TR=0:P1=12:P2=0:TimeU=1:sfc:12hr fcst:type=Perturbed forecast 9:NAve=0 diff --git a/tests/run_wgrib_tests.sh b/tests/run_wgrib_tests.sh new file mode 100644 index 00000000..d8d078c7 --- /dev/null +++ b/tests/run_wgrib_tests.sh @@ -0,0 +1,15 @@ +#!/bin/sh +# This script runs tests for the wgrib utility. +# Requires BUILD_WGRIB=ON +# +# Alyson Stahl, 1-/18/24 + +set -e +echo "" +echo "*** Running wgrib tests" + +../wgrib/wgrib data/ref_ecmwf.jul.grb1 > wgrib_junk.txt +diff -w wgrib_junk.txt data/ref_ecmwf.jul.grb1.inv + +echo "*** SUCCESS!" +exit 0 \ No newline at end of file