forked from Unidata/netcdf-c
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Use the built-in HDF5 byte-range reader, if available.
re: Issue Unidata#1848 The existing Virtual File Driver built to support byte-range read-only file access is quite old. It turns out to be extremely slow (reason unknown at the moment). Starting with HDF5 1.10.6, the HDF5 library has its own version of such a file driver. The HDF5 developers have better knowledge about building such a driver and what incantations are needed to get good performance. This PR modifies the byte-range code in hdf5open.c so that if the HDF5 file driver is available, then it is used in preference to the one written by the Netcdf group. Misc. Other Changes: 1. Moved all of nc4print code to ncdump to keep appveyor quiet.
- Loading branch information
1 parent
e9af580
commit f3218a2
Showing
18 changed files
with
324 additions
and
105 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,77 +1,26 @@ | ||
netcdf \2004050300_eta_211 { | ||
netcdf point { | ||
dimensions: | ||
record = UNLIMITED ; // (1 currently) | ||
x = 135 ; | ||
y = 95 ; | ||
datetime_len = 21 ; | ||
nmodels = 1 ; | ||
ngrids = 1 ; | ||
nav = 1 ; | ||
nav_len = 100 ; | ||
time = 3 ; | ||
variables: | ||
double reftime(record) ; | ||
reftime:long_name = "reference time" ; | ||
reftime:units = "hours since 1992-1-1" ; | ||
double valtime(record) ; | ||
valtime:long_name = "valid time" ; | ||
valtime:units = "hours since 1992-1-1" ; | ||
char datetime(record, datetime_len) ; | ||
datetime:long_name = "reference date and time" ; | ||
float valtime_offset(record) ; | ||
valtime_offset:long_name = "hours from reference time" ; | ||
valtime_offset:units = "hours" ; | ||
int model_id(nmodels) ; | ||
model_id:long_name = "generating process ID number" ; | ||
char nav_model(nav, nav_len) ; | ||
nav_model:long_name = "navigation model name" ; | ||
int grid_type_code(nav) ; | ||
grid_type_code:long_name = "GRIB-1 GDS data representation type" ; | ||
char grid_type(nav, nav_len) ; | ||
grid_type:long_name = "GRIB-1 grid type" ; | ||
char grid_name(nav, nav_len) ; | ||
grid_name:long_name = "grid name" ; | ||
int grid_center(nav) ; | ||
grid_center:long_name = "GRIB-1 originating center ID" ; | ||
int grid_number(nav, ngrids) ; | ||
grid_number:long_name = "GRIB-1 catalogued grid numbers" ; | ||
grid_number:_FillValue = -9999 ; | ||
char x_dim(nav, nav_len) ; | ||
x_dim:long_name = "x dimension name" ; | ||
char y_dim(nav, nav_len) ; | ||
y_dim:long_name = "y dimension name" ; | ||
int Nx(nav) ; | ||
Nx:long_name = "number of points along x-axis" ; | ||
int Ny(nav) ; | ||
Ny:long_name = "number of points along y-axis" ; | ||
float La1(nav) ; | ||
La1:long_name = "latitude of first grid point" ; | ||
La1:units = "degrees_north" ; | ||
float Lo1(nav) ; | ||
Lo1:long_name = "longitude of first grid point" ; | ||
Lo1:units = "degrees_east" ; | ||
float Lov(nav) ; | ||
Lov:long_name = "orientation of the grid" ; | ||
Lov:units = "degrees_east" ; | ||
float Dx(nav) ; | ||
Dx:long_name = "x-direction grid length" ; | ||
Dx:units = "km" ; | ||
float Dy(nav) ; | ||
Dy:long_name = "y-direction grid length" ; | ||
Dy:units = "km" ; | ||
byte ProjFlag(nav) ; | ||
ProjFlag:long_name = "projection center flag" ; | ||
byte ResCompFlag(nav) ; | ||
ResCompFlag:long_name = "resolution and component flags" ; | ||
float Z_sfc(record, y, x) ; | ||
Z_sfc:long_name = "Geopotential height, gpm" ; | ||
Z_sfc:units = "gp m" ; | ||
Z_sfc:_FillValue = -9999.f ; | ||
Z_sfc:navigation = "nav" ; | ||
float lon(time) ; | ||
lon:long_name = "longitude" ; | ||
lon:units = "degrees_east" ; | ||
float lat(time) ; | ||
lat:long_name = "latitude" ; | ||
lat:units = "degrees_north" ; | ||
float z(time) ; | ||
z:long_name = "height above mean sea level" ; | ||
z:units = "km" ; | ||
z:positive = "up" ; | ||
double time(time) ; | ||
time:long_name = "time" ; | ||
time:units = "days since 1970-01-01 00:00:00" ; | ||
float data(time) ; | ||
data :long_name = "skin temperature" ; | ||
data :units = "Celsius" ; | ||
data :coordinates = "time lon lat z" ; | ||
|
||
// global attributes: | ||
:record = "reftime, valtime" ; | ||
:history = "2003-09-25 16:09:26 - created by gribtocdl 1.4 - 12.12.2002" ; | ||
:title = "CMC_reg_HGT_SFC_0_ps60km_2003092500_P000.grib" ; | ||
:Conventions = "NUWG" ; | ||
:version = 0. ; | ||
:featureType = "point" ; | ||
:Conventions = "CF-1.6" ; | ||
} |
File renamed without changes.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,50 @@ | ||
netcdf HadCRUT.4.6.0.0.median { | ||
dimensions: | ||
latitude = 36 ; | ||
longitude = 72 ; | ||
field_status_string_length = 1 ; | ||
time = UNLIMITED ; // (2047 currently) | ||
variables: | ||
float latitude(latitude) ; | ||
latitude:standard_name = "latitude" ; | ||
latitude:long_name = "latitude" ; | ||
latitude:point_spacing = "even" ; | ||
latitude:units = "degrees_north" ; | ||
latitude:axis = "Y" ; | ||
float longitude(longitude) ; | ||
longitude:standard_name = "longitude" ; | ||
longitude:long_name = "longitude" ; | ||
longitude:point_spacing = "even" ; | ||
longitude:units = "degrees_east" ; | ||
longitude:axis = "X" ; | ||
float time(time) ; | ||
time:standard_name = "time" ; | ||
time:long_name = "time" ; | ||
time:units = "days since 1850-1-1 00:00:00" ; | ||
time:calendar = "gregorian" ; | ||
time:start_year = 1850s ; | ||
time:end_year = 2020s ; | ||
time:start_month = 1s ; | ||
time:end_month = 7s ; | ||
time:axis = "T" ; | ||
float temperature_anomaly(time, latitude, longitude) ; | ||
temperature_anomaly:long_name = "near_surface_temperature_anomaly" ; | ||
temperature_anomaly:units = "K" ; | ||
temperature_anomaly:missing_value = -1.e+30f ; | ||
temperature_anomaly:_FillValue = -1.e+30f ; | ||
temperature_anomaly:reference_period = 1961s, 1990s ; | ||
char field_status(time, field_status_string_length) ; | ||
field_status:long_name = "field_status" ; | ||
|
||
// global attributes: | ||
:title = "HadCRUT4 near-surface temperature ensemble data - ensemble median" ; | ||
:institution = "Met Office Hadley Centre / Climatic Research Unit, University of East Anglia" ; | ||
:history = "Updated at 27/08/2020 14:34:42" ; | ||
:source = "CRUTEM.4.6.0.0, HadSST.3.1.1.0" ; | ||
:comment = "" ; | ||
:reference = "Morice, C. P., J. J. Kennedy, N. A. Rayner, and P. D. Jones (2012), Quantifying uncertainties in global and regional temperature change using an ensemble of observational estimates: The HadCRUT4 dataset, J. Geophys. Res., doi:10.1029/2011JD017187" ; | ||
:version = "HadCRUT.4.6.0.0" ; | ||
:Conventions = "CF-1.0" ; | ||
:ensemble_members = 100s ; | ||
:ensemble_member_index = 0s ; | ||
} |
Oops, something went wrong.