Soil Water Balance (SWB2)
Loading...
Searching...
No Matches
netcdf4_support Module Reference

Provide support for use of netCDF files as input for time-varying, gridded meteorlogic data, or output for any SWB-generated variable. More...

Data Types

type  t_netcdf4_file
type  t_netcdf_attribute
type  t_netcdf_dimension
type  t_netcdf_variable

Functions/Subroutines

logical(c_bool) function, public netcdf_date_within_range (ncfile, ijulianday)
integer(c_int) function nf_julian_day_to_index (ncfile, rjulianday)
 We need two functions to convert from index to timeval, and timeval to JD; note that timeval refers to the number of days from the origin of the netCDF file.
real(c_double) function nf_index_to_dayvalue (ncfile, iindex)
real(c_double) function nf_dayvalue_to_julian_day (ncfile, rdayvalue)
integer(c_size_t) function nf_julian_day_to_index_adj (ncfile, rjulianday)
integer(c_int) function nf_return_varid (ncfile, ivarindex)
integer(c_int) function nf_return_dimid (ncfile, idimindex)
integer(c_int) function nf_return_varindex (ncfile, ivarid)
character(len=256) function nf_return_attvalue (ncfile, ivarindex, sattname)
integer(c_int) function nf_return_dimindex (ncfile, idimid)
integer(c_size_t) function nf_return_dimsize (ncfile, idimid)
subroutine nf_guess_z_variable_name (ncfile)
subroutine, public netcdf_open_and_prepare_for_merging (ncfile, sfilename, guess_z_var_name)
subroutine, public netcdf_open_and_prepare_as_input (ncfile, sfilename, lfliphorizontal, lflipvertical, lallowautomaticdataflipping, rx_coord_addoffset, ry_coord_addoffset, svariableorder, svarname_x, svarname_y, svarname_z, svarname_time, rcoordinatetolerance, tgridbounds, ilu)
subroutine, public netcdf_open_and_prepare_as_output_archive (ncfile, ncfile_archive, ioriginmonth, ioriginday, ioriginyear, istartyear, iendyear)
subroutine, public netcdf_open_and_prepare_as_output (ncfile, svariablename, svariableunits, inx, iny, fx, fy, startdate, enddate, proj4_string, history_list, executable_name, dplat, dplon, fvalidmin, fvalidmax, write_time_bounds, filename_prefix, filename_modifier)
subroutine nf_set_z_variable_name (ncfile, svarname_z)
subroutine nf_set_iteration_bounds (ncfile)
subroutine nf_set_start_count_stride (ncfile)
subroutine nf_return_native_coord_bounds (ncfile)
subroutine nf_get_time_vals (ncfile)
subroutine nf_get_x_and_y (ncfile)
subroutine nf_open_file (ncfile, sfilename, ilu)
subroutine, public netcdf_open_file (ncfile, sfilename, ilu)
subroutine nf_trap (iresultcode, sfilename, ilinenumber, netcdf_filename)
subroutine, public netcdf_close_file (ncfile)
subroutine, public netcdf_deallocate_data_struct (ncfile)
subroutine, public netcdf_nullify_data_struct (ncfile)
subroutine nf_populate_dimension_struct (ncfile)
subroutine nf_populate_variable_struct (ncfile)
subroutine nf_populate_attribute_struct (ncfile, pnc_att, inc_varid, iattnum)
subroutine, public netcdf_get_variable_id_for_variable (ncfile, variable_name, variable_id)
subroutine, public netcdf_get_attribute_list_for_variable (ncfile, variable_name, attribute_name_list, attribute_value_list)
subroutine, public netcdf_set_coordinate_tolerance (ncfile, tolerance)
subroutine, public netcdf_get_variable_list (ncfile, variable_list)
logical(c_bool) function, public netcdf_update_time_starting_index (ncfile, ijulianday)
subroutine, public netcdf_get_variable_slice (ncfile, rvalues, dpvalues, ivalues)
subroutine nf_get_variable_slice_short (ncfile, i2values)
subroutine nf_get_variable_slice_int (ncfile, ivalues)
subroutine nf_get_variable_slice_float (ncfile, rvalues)
subroutine nf_get_variable_slice_double (ncfile, dpvalues)
subroutine nf_get_variable_vector_short (ncfile, inc_varid, inc_start, inc_count, inc_stride, inc_vars)
subroutine nf_get_variable_array_short (ncfile, inc_varid, inc_start, inc_count, inc_stride, inc_vars)
subroutine nf_get_variable_array_as_vector_short (ncfile, inc_varid, inc_start, inc_count, inc_stride, inc_vars)
subroutine nf_get_variable_array_as_vector_int (ncfile, inc_varid, inc_start, inc_count, inc_stride, inc_vars)
subroutine nf_get_variable_vector_int (ncfile, inc_varid, inc_start, inc_count, inc_stride, inc_vars)
subroutine nf_get_variable_vector_double (ncfile, inc_varid, inc_start, inc_count, inc_stride, dpnc_vars)
subroutine nf_get_variable_array_double (ncfile, inc_varid, inc_start, inc_count, inc_stride, dpnc_vars)
subroutine nf_get_variable_array_as_vector_double (ncfile, inc_varid, inc_start, inc_count, inc_stride, dpnc_vars)
subroutine nf_get_variable_vector_float (ncfile, inc_varid, inc_start, inc_count, inc_stride, rnc_vars)
subroutine nf_get_variable_array_float (ncfile, inc_varid, inc_start, inc_count, inc_stride, rnc_vars)
subroutine nf_get_variable_array_as_vector_float (ncfile, inc_varid, inc_start, inc_count, inc_stride, rnc_vars)
subroutine, public netcdf_dump_cdl (ncfile, ilu)
real(c_double) function, dimension(0:1) nf_get_first_and_last (ncfile, ivarindex)
subroutine nf_calculate_time_range (ncfile)
subroutine nf_get_time_units (ncfile)
subroutine nf_get_xyz_units (ncfile)
subroutine nf_get_scale_and_offset (ncfile)
subroutine nf_get_variable_id_and_type (ncfile, strict_asserts)
integer(c_int) function nf_return_index_double (rvalues, rtargetvalue, roffsetvalue)
integer(c_size_t) function, dimension(2), public netcdf_coord_to_col_row (ncfile, rx, ry)
integer(c_int) function nf_get_varid (ncfile, svariablename)
subroutine nf_create (ncfile, sfilename, ilu)
subroutine nf_define_deflate (ncfile, ivarid, ishuffle, ideflate, ideflate_level)
subroutine nf_enddef (ncfile)
subroutine nf_redef (ncfile)
subroutine nf_define_dimension (ncfile, sdimensionname, idimensionsize)
subroutine nf_delete_attribute (ncfile, svariablename, sattributename)
subroutine nf_define_dimensions (ncfile)
subroutine nf_set_standard_dimensions (ncfile, inx, iny, write_time_bounds)
subroutine nf_set_standard_variables (ncfile, svarname_z, llatlon, write_time_bounds)
subroutine nf_set_global_attributes (ncfile, sdatatype, executable_name, history_list, ssourcefile)
subroutine nf_set_standard_attributes (ncfile, sorigintext, proj4_string, llatlon, fvalidmin, fvalidmax, write_time_bounds)
subroutine nf_put_x_and_y (ncfile, dpx, dpy)
subroutine nf_put_lat_and_lon (ncfile, dplat, dplon)
integer(c_int) function nf_define_variable (ncfile, svariablename, ivariabletype, inumberofdimensions, idimids)
subroutine nf_define_variables (ncfile)
subroutine, public netcdf_rewrite_attribute (ncfile, svariablename, sattributename, sattributevalue, iattributevalue, rattributevalue, dpattributevalue)
subroutine nf_put_attribute (ncfile, ivarid, sattributename, sattributevalue, iattributevalue, rattributevalue, dpattributevalue)
subroutine nf_put_attributes (ncfile)
subroutine, public netcdf_put_variable_array (ncfile, ivarid, istart, icount, istride, ivalues, i2values, rvalues, dpvalues)
subroutine, public netcdf_put_packed_variable_array (ncfile, ivarid, istart, icount, istride, lmask, ivalues, ifield, i2values, i2field, rvalues, rfield, dpvalues, dpfield)
subroutine, public netcdf_put_variable_vector (ncfile, ivarid, istart, icount, istride, ivalues, i2values, rvalues, dpvalues)

Variables

integer(c_int), public nc_readonly = 0
integer(c_int), public nc_readwrite = 1
integer(c_int), parameter nc_nat = 0
integer(c_int), parameter nc_byte = 1
integer(c_int), parameter nc_char = 2
integer(c_int), parameter nc_short = 3
integer(c_int), parameter nc_int = 4
integer(c_int), parameter nc_long = NC_INT
integer(c_int), parameter, public nc_float = 5
integer(c_int), parameter nc_double = 6
integer(c_int), parameter nc_ubyte = 7
integer(c_int), parameter nc_ushort = 8
integer(c_int), parameter nc_uint = 9
integer(c_int), parameter nc_int64 = 10
integer(c_int), parameter nc_uint64 = 11
integer(c_int), parameter nc_string = 12
integer(c_int), parameter nc_fill_char = 0
integer(c_int), parameter nc_fill_byte = -127
integer(c_int), parameter nc_fill_short = -32767
integer(c_int), parameter, public nc_fill_int = -2147483647
integer(c_int), parameter nc_na_int = -9999
real(c_float), parameter, public nc_fill_float = -9999.0_c_float
real(c_double), parameter nc_fill_double = -9.9e-20_c_double
integer(c_int), parameter nc_nowrite = 0
integer(c_int), parameter nc_write = 1
integer(c_int), parameter nc_clobber = 0
integer(c_int), parameter nc_noclobber = 4
integer(c_int), parameter nc_fill = 0
integer(c_int), parameter nc_nofill = 256
integer(c_int), parameter nc_lock = 1024
integer(c_int), parameter nc_share = 2048
integer(c_int), parameter nc_strict_nc3 = 8
integer(c_int), parameter nc_64bit_offset = 512
integer(c_int), parameter nc_sizehint_default = 0
integer(c_int), parameter nc_align_chunk = -1
integer(c_int), parameter nc_format_classic = 1
integer(c_int), parameter nc_format_64bit = 2
integer(c_int), parameter nc_format_netcdf4 = 3
integer(c_int), parameter nc_format_netcdf4_classic = 4
integer(c_int), parameter nc_max_dims = 1024
integer(c_int), parameter nc_max_attrs = 8192
integer(c_int), parameter nc_max_vars = 8192
integer(c_int), parameter nc_max_name = 256
integer(c_int), parameter nc_shuffle_yes = 1
integer(c_int), parameter nc_shuffle_no = 0
integer(c_int), parameter nc_deflate_yes = 1
integer(c_int), parameter nc_deflate_no = 0
integer(c_int), parameter nc_netcdf4 = 4096
integer(c_int), parameter nc_classic_model = 256
integer(c_int), parameter nc_unlimited = 0
integer(c_int), parameter nc_global = -1
integer(c_int), parameter, public nc_time = 0
 @TODO: implement a more flexible way of tracking variable IDs; presently the code can break if lat and lon are omitted, but time_bnds is included; this is because if the lat and lon variables are not defined, NC_TIME_BNDS may be 4 or 5 or some other value.
integer(c_int), parameter, public nc_y = 1
integer(c_int), parameter, public nc_x = 2
integer(c_int), parameter, public nc_z = 3
integer(c_int), parameter, public nc_aux = 3
integer(c_int), parameter, public nc_crs = 4
integer(c_int), parameter, public nc_lat = 5
integer(c_int), parameter, public nc_lon = 6
integer(c_int), public nc_time_bnds = 7
integer(c_int), parameter nc_first = 0
integer(c_int), parameter nc_last = 1
integer(c_int), parameter nc_by = 2
integer(c_int), parameter, public nc_left = 0
integer(c_int), parameter, public nc_right = 1
integer(c_int), parameter, public nc_top = 0
integer(c_int), parameter, public nc_bottom = 1
integer(c_int), parameter column = 1
integer(c_int), parameter row = 2
integer(c_int), parameter leap_year = 0
integer(c_int), parameter noleap_year = 1
integer(c_int), parameter year_is_360_days = 2
character(len=25), dimension(4), parameter netcdf_format_string = ["NC_FORMAT_CLASSIC ", "NC_FORMAT_64BIT ", "NC_FORMAT_NETCDF4 ", "NC_FORMAT_NETCDF4_CLASSIC" ]
character(len=6), dimension(0:6), parameter netcdf_data_type = ["nat ", "byte ", "char ", "short ", "int ", "float ", "double" ]

Detailed Description

Provide support for use of netCDF files as input for time-varying, gridded meteorlogic data, or output for any SWB-generated variable.

Function/Subroutine Documentation

◆ netcdf_close_file()

subroutine, public netcdf4_support::netcdf_close_file ( type (t_netcdf4_file ) ncfile)

Definition at line 1628 of file netcdf4_support.F90.

Here is the call graph for this function:

◆ netcdf_coord_to_col_row()

integer (c_size_t) function, dimension(2), public netcdf4_support::netcdf_coord_to_col_row ( type (t_netcdf4_file ) ncfile,
real (c_double) rx,
real (c_double) ry )

Definition at line 3220 of file netcdf4_support.F90.

Here is the call graph for this function:

◆ netcdf_date_within_range()

logical (c_bool) function, public netcdf4_support::netcdf_date_within_range ( type (t_netcdf4_file ) ncfile,
integer (c_int) ijulianday )

Definition at line 317 of file netcdf4_support.F90.

◆ netcdf_deallocate_data_struct()

subroutine, public netcdf4_support::netcdf_deallocate_data_struct ( type (t_netcdf4_file ) ncfile)

Definition at line 1641 of file netcdf4_support.F90.

◆ netcdf_dump_cdl()

subroutine, public netcdf4_support::netcdf_dump_cdl ( type (t_netcdf4_file ) ncfile,
integer ilu )

Definition at line 2700 of file netcdf4_support.F90.

◆ netcdf_get_attribute_list_for_variable()

subroutine, public netcdf4_support::netcdf_get_attribute_list_for_variable ( type (t_netcdf4_file), intent(inout) ncfile,
character (len=*), intent(in) variable_name,
type (fstring_list_t), intent(out) attribute_name_list,
type (fstring_list_t), intent(out) attribute_value_list )

Definition at line 1969 of file netcdf4_support.F90.

◆ netcdf_get_variable_id_for_variable()

subroutine, public netcdf4_support::netcdf_get_variable_id_for_variable ( type (t_netcdf4_file), intent(inout) ncfile,
character (len=*), intent(in) variable_name,
integer (c_int), intent(out) variable_id )

Definition at line 1930 of file netcdf4_support.F90.

◆ netcdf_get_variable_list()

subroutine, public netcdf4_support::netcdf_get_variable_list ( type (t_netcdf4_file) ncfile,
type (fstring_list_t) variable_list )

Definition at line 2064 of file netcdf4_support.F90.

◆ netcdf_get_variable_slice()

subroutine, public netcdf4_support::netcdf_get_variable_slice ( type (t_netcdf4_file), intent(inout) ncfile,
real (c_float), dimension(:,:), optional rvalues,
real (c_double), dimension(:,:), optional dpvalues,
integer (c_int), dimension(:,:), optional ivalues )

Definition at line 2108 of file netcdf4_support.F90.

Here is the call graph for this function:

◆ netcdf_nullify_data_struct()

subroutine, public netcdf4_support::netcdf_nullify_data_struct ( type (t_netcdf4_file ) ncfile)

Definition at line 1672 of file netcdf4_support.F90.

◆ netcdf_open_and_prepare_as_input()

subroutine, public netcdf4_support::netcdf_open_and_prepare_as_input ( type (t_netcdf4_file ) ncfile,
character (len=*) sfilename,
logical (c_bool), optional lfliphorizontal,
logical (c_bool), optional lflipvertical,
logical (c_bool), optional lallowautomaticdataflipping,
real (c_double), optional rx_coord_addoffset,
real (c_double), optional ry_coord_addoffset,
character (len=*), optional svariableorder,
character (len=*), optional svarname_x,
character (len=*), optional svarname_y,
character (len=*), optional svarname_z,
character (len=*), optional svarname_time,
real (c_double), optional rcoordinatetolerance,
type (grid_bounds_t), optional tgridbounds,
integer (c_int), optional ilu )

look for and process the "days since MM-D-YYYY" attribute

retrieve the time values as included in the netCDF file

establish scale_factor and add_offset values, if present

retrieve the X and Y coordinates from the netCDF file...

define a subset of the grid as the AOI need all four corner points since it is likely that the AOI rectangle is rotated relative to the base projection

define the entire grid area as the AOI

based on the subset of the netCDF file as determined above, set the start, count, and stride parameters for use in all further data retrievals

establish the bounds to iterate over; this can enable horiz or vert flipping

now that we have (possibly) created a subset, need to get the NATIVE coordinate bounds so that the intermediate grid file can be created

Definition at line 735 of file netcdf4_support.F90.

Here is the call graph for this function:

◆ netcdf_open_and_prepare_as_output()

subroutine, public netcdf4_support::netcdf_open_and_prepare_as_output ( type (t_netcdf4_file ), intent(inout), pointer ncfile,
character (len=*), intent(in) svariablename,
character (len=*), intent(in) svariableunits,
integer (c_int), intent(in) inx,
integer (c_int), intent(in) iny,
real (c_double), dimension(:), intent(in) fx,
real (c_double), dimension(:), intent(in) fy,
type (datetime_t), intent(in) startdate,
type (datetime_t), intent(in) enddate,
character (len=*), intent(in) proj4_string,
type (fstring_list_t), intent(in), optional, pointer history_list,
character (len=*), intent(in), optional executable_name,
real (c_double), dimension(:,:), intent(in), optional dplat,
real (c_double), dimension(:,:), intent(in), optional dplon,
real (c_float), intent(in), optional fvalidmin,
real (c_float), intent(in), optional fvalidmax,
logical (c_bool), intent(in), optional write_time_bounds,
character (len=*), intent(in), optional filename_prefix,
character (len=*), intent(in), optional filename_modifier )

set dimension values in the NCFILE struct

Todo
implement more flexible method of assigning units

transfer dimension values to netCDF file

set variable values in the NCFILE struct

transfer variable values to netCDF file

enable a low level of data compression for the variable of interest

Definition at line 1016 of file netcdf4_support.F90.

Here is the call graph for this function:

◆ netcdf_open_and_prepare_as_output_archive()

subroutine, public netcdf4_support::netcdf_open_and_prepare_as_output_archive ( type (t_netcdf4_file ) ncfile,
type (t_netcdf4_file ) ncfile_archive,
integer (c_int) ioriginmonth,
integer (c_int) ioriginday,
integer (c_int) ioriginyear,
integer (c_int) istartyear,
integer (c_int) iendyear )

set dimension values in the NCFILE struct

transfer dimension values to netCDF file

set variable values in the NCFILE struct

transfer variable values to netCDF file

enable a low level of data compression for the variable of interest

Definition at line 919 of file netcdf4_support.F90.

Here is the call graph for this function:

◆ netcdf_open_and_prepare_for_merging()

subroutine, public netcdf4_support::netcdf_open_and_prepare_for_merging ( type (t_netcdf4_file ), intent(inout) ncfile,
character (len=*), intent(in) sfilename,
logical (c_bool), intent(in), optional guess_z_var_name )

look for and process the "days since MM-DD-YYYY" attribute

retrieve the time values as included in the netCDF file

retrieve the X and Y coordinates from the netCDF file...

define the entire grid area as the AOI

based on the subset of the netCDF file as determined above, set the start, count, and stride parameters for use in all further data retrievals

establish the bounds to iterate over; this can enable horiz or vert flipping

now that we have (possibly) created a subset, need to get the NATIVE coordinate bounds so that the intermediate grid file can be created

Definition at line 660 of file netcdf4_support.F90.

Here is the call graph for this function:

◆ netcdf_open_file()

subroutine, public netcdf4_support::netcdf_open_file ( type (t_netcdf4_file ) ncfile,
character (len=*) sfilename,
integer (c_int), optional ilu )

Similarly, the structure of the file may be slightly different from the previous file

CANNOT ASSUME THAT THIS WILL REMAIN CONSTANT ACROSS FILES FROM THE SAME PROVIDER!! MUST UPDATE TO ENSURE THAT THE INDICES ARE STILL RELEVANT

retrieve the origin for the time units associated with this file

retrieve the time value specific to this file

establish scale_factor and add_offset values, if present

Definition at line 1526 of file netcdf4_support.F90.

Here is the call graph for this function:

◆ netcdf_put_packed_variable_array()

subroutine, public netcdf4_support::netcdf_put_packed_variable_array ( type (t_netcdf4_file ) ncfile,
integer (c_int) ivarid,
integer (c_size_t), dimension(:) istart,
integer (c_size_t), dimension(:) icount,
integer (c_size_t), dimension(:) istride,
logical (c_bool), dimension(:,:) lmask,
integer (c_int), dimension(:), optional ivalues,
integer (c_int), dimension(:,:), optional ifield,
integer (c_short), dimension(:), optional i2values,
integer (c_short), dimension(:,:), optional i2field,
real (c_float), dimension(:), optional rvalues,
real (c_float), dimension(:,:), optional rfield,
real (c_double), dimension(:), optional dpvalues,
real (c_double), dimension(:,:), optional dpfield )

Definition at line 4503 of file netcdf4_support.F90.

Here is the call graph for this function:

◆ netcdf_put_variable_array()

subroutine, public netcdf4_support::netcdf_put_variable_array ( type (t_netcdf4_file ) ncfile,
integer (c_int) ivarid,
integer (c_size_t), dimension(:) istart,
integer (c_size_t), dimension(:) icount,
integer (c_size_t), dimension(:) istride,
integer (c_int), dimension(:,:), optional ivalues,
integer (c_short), dimension(:,:), optional i2values,
real (c_float), dimension(:,:), optional rvalues,
real (c_double), dimension(:,:), optional dpvalues )

Definition at line 4444 of file netcdf4_support.F90.

Here is the call graph for this function:

◆ netcdf_put_variable_vector()

subroutine, public netcdf4_support::netcdf_put_variable_vector ( type (t_netcdf4_file ) ncfile,
integer (c_int) ivarid,
integer (c_size_t), dimension(:) istart,
integer (c_size_t), dimension(:) icount,
integer (c_size_t), dimension(:) istride,
integer (c_int), dimension(:), optional ivalues,
integer (c_short), dimension(:), optional i2values,
real (c_float), dimension(:), optional rvalues,
real (c_double), dimension(:), optional dpvalues )

Definition at line 4566 of file netcdf4_support.F90.

Here is the call graph for this function:

◆ netcdf_rewrite_attribute()

subroutine, public netcdf4_support::netcdf_rewrite_attribute ( type (t_netcdf4_file ) ncfile,
character (len=*) svariablename,
character (len=*) sattributename,
character (len=*), dimension(:), optional sattributevalue,
integer (c_int), dimension(:), optional iattributevalue,
real (c_float), dimension(:), optional rattributevalue,
real (c_double), dimension(:), optional dpattributevalue )

Definition at line 4191 of file netcdf4_support.F90.

Here is the call graph for this function:

◆ netcdf_set_coordinate_tolerance()

subroutine, public netcdf4_support::netcdf_set_coordinate_tolerance ( type (t_netcdf4_file) ncfile,
real (c_double), intent(in) tolerance )

Definition at line 2053 of file netcdf4_support.F90.

◆ netcdf_update_time_starting_index()

logical (c_bool) function, public netcdf4_support::netcdf_update_time_starting_index ( type (t_netcdf4_file) ncfile,
integer (c_int) ijulianday )

Definition at line 2085 of file netcdf4_support.F90.

Here is the call graph for this function:

◆ nf_calculate_time_range()

subroutine netcdf4_support::nf_calculate_time_range ( type (t_netcdf4_file), intent(inout) ncfile)
private

Definition at line 2904 of file netcdf4_support.F90.

Here is the call graph for this function:

◆ nf_create()

subroutine netcdf4_support::nf_create ( type (t_netcdf4_file ) ncfile,
character (len=*) sfilename,
integer (c_int), optional ilu )
private

Definition at line 3296 of file netcdf4_support.F90.

Here is the call graph for this function:

◆ nf_dayvalue_to_julian_day()

real (c_double) function netcdf4_support::nf_dayvalue_to_julian_day ( type (t_netcdf4_file) ncfile,
real (c_double) rdayvalue )
private

Definition at line 370 of file netcdf4_support.F90.

◆ nf_define_deflate()

subroutine netcdf4_support::nf_define_deflate ( type (t_netcdf4_file ) ncfile,
integer (c_int) ivarid,
integer (c_int) ishuffle,
integer (c_int) ideflate,
integer (c_int) ideflate_level )
private

Definition at line 3333 of file netcdf4_support.F90.

Here is the call graph for this function:

◆ nf_define_dimension()

subroutine netcdf4_support::nf_define_dimension ( type (t_netcdf4_file ) ncfile,
character (len=*) sdimensionname,
integer (c_int) idimensionsize )
private

Definition at line 3374 of file netcdf4_support.F90.

Here is the call graph for this function:

◆ nf_define_dimensions()

subroutine netcdf4_support::nf_define_dimensions ( type (t_netcdf4_file) ncfile)
private

Definition at line 3415 of file netcdf4_support.F90.

Here is the call graph for this function:

◆ nf_define_variable()

integer (c_int) function netcdf4_support::nf_define_variable ( type (t_netcdf4_file ) ncfile,
character (len=*) svariablename,
integer (c_int) ivariabletype,
integer (c_int) inumberofdimensions,
integer (c_int), dimension(:) idimids )
private

Definition at line 4136 of file netcdf4_support.F90.

Here is the call graph for this function:

◆ nf_define_variables()

subroutine netcdf4_support::nf_define_variables ( type (t_netcdf4_file) ncfile)
private

Definition at line 4160 of file netcdf4_support.F90.

Here is the call graph for this function:

◆ nf_delete_attribute()

subroutine netcdf4_support::nf_delete_attribute ( type (t_netcdf4_file ) ncfile,
character (len=*) svariablename,
character (len=*) sattributename )
private

Definition at line 3396 of file netcdf4_support.F90.

Here is the call graph for this function:

◆ nf_enddef()

subroutine netcdf4_support::nf_enddef ( type (t_netcdf4_file ) ncfile)
private

Definition at line 3352 of file netcdf4_support.F90.

Here is the call graph for this function:

◆ nf_get_first_and_last()

real (c_double) function, dimension(0:1) netcdf4_support::nf_get_first_and_last ( type (t_netcdf4_file ) ncfile,
integer (c_int) ivarindex )
private

if there is only one day of data in this netCDF file, the first day equals the last day

Definition at line 2812 of file netcdf4_support.F90.

Here is the call graph for this function:

◆ nf_get_scale_and_offset()

subroutine netcdf4_support::nf_get_scale_and_offset ( type (t_netcdf4_file), intent(inout) ncfile)
private

Now repeat the process for "add_offset" attribute

Definition at line 3028 of file netcdf4_support.F90.

Here is the call graph for this function:

◆ nf_get_time_units()

subroutine netcdf4_support::nf_get_time_units ( type (t_netcdf4_file), intent(inout) ncfile)
private
Todo
this does not appear to have the fix that was applied to the master swb branch to deal with cases where no time values are given at all

Definition at line 2918 of file netcdf4_support.F90.

◆ nf_get_time_vals()

subroutine netcdf4_support::nf_get_time_vals ( type (t_netcdf4_file ) ncfile)
private
Todo
allow time to be read in as float, short, or int as well

Definition at line 1329 of file netcdf4_support.F90.

Here is the call graph for this function:

◆ nf_get_variable_array_as_vector_double()

subroutine netcdf4_support::nf_get_variable_array_as_vector_double ( type (t_netcdf4_file), intent(inout) ncfile,
integer (c_int) inc_varid,
integer (c_size_t), dimension(:) inc_start,
integer (c_size_t), dimension(:) inc_count,
integer (c_size_t), dimension(:) inc_stride,
real (c_double), dimension(:) dpnc_vars )
private

Definition at line 2616 of file netcdf4_support.F90.

Here is the call graph for this function:

◆ nf_get_variable_array_as_vector_float()

subroutine netcdf4_support::nf_get_variable_array_as_vector_float ( type (t_netcdf4_file), intent(inout) ncfile,
integer (c_int) inc_varid,
integer (c_size_t), dimension(:) inc_start,
integer (c_size_t), dimension(:) inc_count,
integer (c_size_t), dimension(:) inc_stride,
real (c_float), dimension(:) rnc_vars )
private

Definition at line 2679 of file netcdf4_support.F90.

Here is the call graph for this function:

◆ nf_get_variable_array_as_vector_int()

subroutine netcdf4_support::nf_get_variable_array_as_vector_int ( type (t_netcdf4_file), intent(inout) ncfile,
integer (c_int) inc_varid,
integer (c_size_t), dimension(:) inc_start,
integer (c_size_t), dimension(:) inc_count,
integer (c_size_t), dimension(:) inc_stride,
integer (c_int), dimension(:) inc_vars )
private

Definition at line 2532 of file netcdf4_support.F90.

Here is the call graph for this function:

◆ nf_get_variable_array_as_vector_short()

subroutine netcdf4_support::nf_get_variable_array_as_vector_short ( type (t_netcdf4_file), intent(inout) ncfile,
integer (c_int) inc_varid,
integer (c_size_t), dimension(:) inc_start,
integer (c_size_t), dimension(:) inc_count,
integer (c_size_t), dimension(:) inc_stride,
integer (c_short), dimension(:) inc_vars )
private

Definition at line 2511 of file netcdf4_support.F90.

Here is the call graph for this function:

◆ nf_get_variable_array_double()

subroutine netcdf4_support::nf_get_variable_array_double ( type (t_netcdf4_file), intent(inout) ncfile,
integer (c_int) inc_varid,
integer (c_size_t), dimension(:) inc_start,
integer (c_size_t), dimension(:) inc_count,
integer (c_size_t), dimension(:) inc_stride,
real (c_double), dimension(:,:) dpnc_vars )
private

Definition at line 2595 of file netcdf4_support.F90.

Here is the call graph for this function:

◆ nf_get_variable_array_float()

subroutine netcdf4_support::nf_get_variable_array_float ( type (t_netcdf4_file), intent(inout) ncfile,
integer (c_int) inc_varid,
integer (c_size_t), dimension(:) inc_start,
integer (c_size_t), dimension(:) inc_count,
integer (c_size_t), dimension(:) inc_stride,
real (c_float), dimension(:,:) rnc_vars )
private

Definition at line 2658 of file netcdf4_support.F90.

Here is the call graph for this function:

◆ nf_get_variable_array_short()

subroutine netcdf4_support::nf_get_variable_array_short ( type (t_netcdf4_file), intent(inout) ncfile,
integer (c_int) inc_varid,
integer (c_size_t), dimension(:) inc_start,
integer (c_size_t), dimension(:) inc_count,
integer (c_size_t), dimension(:) inc_stride,
integer (c_short), dimension(:,:) inc_vars )
private

Definition at line 2490 of file netcdf4_support.F90.

Here is the call graph for this function:

◆ nf_get_variable_id_and_type()

subroutine netcdf4_support::nf_get_variable_id_and_type ( type (t_netcdf4_file), intent(inout) ncfile,
logical (c_bool), intent(in), optional strict_asserts )
private

Definition at line 3104 of file netcdf4_support.F90.

Here is the call graph for this function:

◆ nf_get_variable_slice_double()

subroutine netcdf4_support::nf_get_variable_slice_double ( type (t_netcdf4_file) ncfile,
real (c_double), dimension(:,:) dpvalues )
private

Definition at line 2400 of file netcdf4_support.F90.

Here is the call graph for this function:

◆ nf_get_variable_slice_float()

subroutine netcdf4_support::nf_get_variable_slice_float ( type (t_netcdf4_file) ncfile,
real (c_float), dimension(:,:) rvalues )
private

Definition at line 2331 of file netcdf4_support.F90.

Here is the call graph for this function:

◆ nf_get_variable_slice_int()

subroutine netcdf4_support::nf_get_variable_slice_int ( type (t_netcdf4_file) ncfile,
integer (c_int), dimension(:,:) ivalues )
private

Definition at line 2258 of file netcdf4_support.F90.

Here is the call graph for this function:

◆ nf_get_variable_slice_short()

subroutine netcdf4_support::nf_get_variable_slice_short ( type (t_netcdf4_file) ncfile,
integer (c_short), dimension(:,:), intent(inout) i2values )
private

Definition at line 2186 of file netcdf4_support.F90.

Here is the call graph for this function:

◆ nf_get_variable_vector_double()

subroutine netcdf4_support::nf_get_variable_vector_double ( type (t_netcdf4_file), intent(inout) ncfile,
integer (c_int) inc_varid,
integer (c_size_t) inc_start,
integer (c_size_t) inc_count,
integer (c_size_t) inc_stride,
real (c_double), dimension(:) dpnc_vars )
private

Definition at line 2574 of file netcdf4_support.F90.

Here is the call graph for this function:

◆ nf_get_variable_vector_float()

subroutine netcdf4_support::nf_get_variable_vector_float ( type (t_netcdf4_file), intent(inout) ncfile,
integer (c_int) inc_varid,
integer (c_size_t) inc_start,
integer (c_size_t) inc_count,
integer (c_size_t) inc_stride,
real (c_float), dimension(:) rnc_vars )
private

Definition at line 2637 of file netcdf4_support.F90.

Here is the call graph for this function:

◆ nf_get_variable_vector_int()

subroutine netcdf4_support::nf_get_variable_vector_int ( type (t_netcdf4_file), intent(inout) ncfile,
integer (c_int) inc_varid,
integer (c_size_t) inc_start,
integer (c_size_t) inc_count,
integer (c_size_t) inc_stride,
integer (c_int), dimension(:) inc_vars )
private

Definition at line 2553 of file netcdf4_support.F90.

Here is the call graph for this function:

◆ nf_get_variable_vector_short()

subroutine netcdf4_support::nf_get_variable_vector_short ( type (t_netcdf4_file), intent(inout) ncfile,
integer (c_int) inc_varid,
integer (c_size_t) inc_start,
integer (c_size_t) inc_count,
integer (c_size_t) inc_stride,
integer (c_short), dimension(:) inc_vars )
private

Definition at line 2469 of file netcdf4_support.F90.

Here is the call graph for this function:

◆ nf_get_varid()

integer (c_int) function netcdf4_support::nf_get_varid ( type (t_netcdf4_file ) ncfile,
character (len=*) svariablename )
private

Definition at line 3268 of file netcdf4_support.F90.

◆ nf_get_x_and_y()

subroutine netcdf4_support::nf_get_x_and_y ( type (t_netcdf4_file ) ncfile)
private

Definition at line 1371 of file netcdf4_support.F90.

Here is the call graph for this function:

◆ nf_get_xyz_units()

subroutine netcdf4_support::nf_get_xyz_units ( type (t_netcdf4_file), intent(inout) ncfile)
private

Definition at line 2989 of file netcdf4_support.F90.

◆ nf_guess_z_variable_name()

subroutine netcdf4_support::nf_guess_z_variable_name ( type (t_netcdf4_file ) ncfile)
private

Definition at line 631 of file netcdf4_support.F90.

◆ nf_index_to_dayvalue()

real (c_double) function netcdf4_support::nf_index_to_dayvalue ( type (t_netcdf4_file) ncfile,
integer (c_int) iindex )
private

Definition at line 355 of file netcdf4_support.F90.

◆ nf_julian_day_to_index()

integer (c_int) function netcdf4_support::nf_julian_day_to_index ( type (t_netcdf4_file) ncfile,
real (c_double) rjulianday )
private

We need two functions to convert from index to timeval, and timeval to JD; note that timeval refers to the number of days from the origin of the netCDF file.

return the day value (number of days since origin

Definition at line 343 of file netcdf4_support.F90.

◆ nf_julian_day_to_index_adj()

integer (c_size_t) function netcdf4_support::nf_julian_day_to_index_adj ( type (t_netcdf4_file ) ncfile,
real (c_double) rjulianday )
private

First guess at what the appropriate index value should be. Current JD minus the Origin JD is a good guess.

calculate the range of INDEX values to search over

Definition at line 386 of file netcdf4_support.F90.

Here is the call graph for this function:

◆ nf_open_file()

subroutine netcdf4_support::nf_open_file ( type (t_netcdf4_file ) ncfile,
character (len=*) sfilename,
integer (c_int), optional ilu )
private

Definition at line 1494 of file netcdf4_support.F90.

Here is the call graph for this function:

◆ nf_populate_attribute_struct()

subroutine netcdf4_support::nf_populate_attribute_struct ( type (t_netcdf4_file), intent(inout) ncfile,
type (t_netcdf_attribute), pointer pnc_att,
integer (c_int) inc_varid,
integer (c_int) iattnum )
private

Definition at line 1813 of file netcdf4_support.F90.

Here is the call graph for this function:

◆ nf_populate_dimension_struct()

subroutine netcdf4_support::nf_populate_dimension_struct ( type (t_netcdf4_file) ncfile)
private

Definition at line 1686 of file netcdf4_support.F90.

Here is the call graph for this function:

◆ nf_populate_variable_struct()

subroutine netcdf4_support::nf_populate_variable_struct ( type (t_netcdf4_file) ncfile)
private

Definition at line 1724 of file netcdf4_support.F90.

Here is the call graph for this function:

◆ nf_put_attribute()

subroutine netcdf4_support::nf_put_attribute ( type (t_netcdf4_file ) ncfile,
integer (c_int) ivarid,
character (len=*) sattributename,
character (len=*), dimension(:), optional sattributevalue,
integer (c_int), dimension(:), optional iattributevalue,
real (c_float), dimension(:), optional rattributevalue,
real (c_double), dimension(:), optional dpattributevalue )
private

Definition at line 4225 of file netcdf4_support.F90.

Here is the call graph for this function:

◆ nf_put_attributes()

subroutine netcdf4_support::nf_put_attributes ( type (t_netcdf4_file ) ncfile)
private

Definition at line 4294 of file netcdf4_support.F90.

Here is the call graph for this function:

◆ nf_put_lat_and_lon()

subroutine netcdf4_support::nf_put_lat_and_lon ( type (t_netcdf4_file) ncfile,
real (c_double), dimension(:,:) dplat,
real (c_double), dimension(:,:) dplon )
private

Definition at line 4105 of file netcdf4_support.F90.

Here is the call graph for this function:

◆ nf_put_x_and_y()

subroutine netcdf4_support::nf_put_x_and_y ( type (t_netcdf4_file) ncfile,
real (c_double), dimension(:) dpx,
real (c_double), dimension(:) dpy )
private

Definition at line 4073 of file netcdf4_support.F90.

Here is the call graph for this function:

◆ nf_redef()

subroutine netcdf4_support::nf_redef ( type (t_netcdf4_file ) ncfile)
private

Definition at line 3363 of file netcdf4_support.F90.

Here is the call graph for this function:

◆ nf_return_attvalue()

character (len=256) function netcdf4_support::nf_return_attvalue ( type (t_netcdf4_file ) ncfile,
integer (c_int) ivarindex,
character (len=*) sattname )
private

Definition at line 513 of file netcdf4_support.F90.

◆ nf_return_dimid()

integer (c_int) function netcdf4_support::nf_return_dimid ( type (t_netcdf4_file ) ncfile,
integer (c_int) idimindex )
private

Definition at line 464 of file netcdf4_support.F90.

◆ nf_return_dimindex()

integer (c_int) function netcdf4_support::nf_return_dimindex ( type (t_netcdf4_file ) ncfile,
integer (c_int) idimid )
private

Definition at line 565 of file netcdf4_support.F90.

◆ nf_return_dimsize()

integer (c_size_t) function netcdf4_support::nf_return_dimsize ( type (t_netcdf4_file ) ncfile,
integer (c_int) idimid )
private

Definition at line 598 of file netcdf4_support.F90.

◆ nf_return_index_double()

integer (c_int) function netcdf4_support::nf_return_index_double ( real (c_double), dimension(:) rvalues,
real (c_double) rtargetvalue,
real (c_double) roffsetvalue )
private

Definition at line 3176 of file netcdf4_support.F90.

◆ nf_return_native_coord_bounds()

subroutine netcdf4_support::nf_return_native_coord_bounds ( type (t_netcdf4_file ) ncfile)
private

find the (x,y) associated with the column and row number bounds

Definition at line 1291 of file netcdf4_support.F90.

◆ nf_return_varid()

integer (c_int) function netcdf4_support::nf_return_varid ( type (t_netcdf4_file ) ncfile,
integer (c_int) ivarindex )
private

Definition at line 448 of file netcdf4_support.F90.

◆ nf_return_varindex()

integer (c_int) function netcdf4_support::nf_return_varindex ( type (t_netcdf4_file ) ncfile,
integer (c_int) ivarid )
private

Definition at line 480 of file netcdf4_support.F90.

◆ nf_set_global_attributes()

subroutine netcdf4_support::nf_set_global_attributes ( type (t_netcdf4_file ) ncfile,
character (len=*), intent(in) sdatatype,
character (len=*), intent(in), optional executable_name,
type (fstring_list_t), intent(in), optional, pointer history_list,
character (len=*), intent(in), optional ssourcefile )
private

Definition at line 3598 of file netcdf4_support.F90.

◆ nf_set_iteration_bounds()

subroutine netcdf4_support::nf_set_iteration_bounds ( type (t_netcdf4_file ) ncfile)
private

Definition at line 1209 of file netcdf4_support.F90.

◆ nf_set_standard_attributes()

subroutine netcdf4_support::nf_set_standard_attributes ( type (t_netcdf4_file ) ncfile,
character (len=*) sorigintext,
character (len=*), optional proj4_string,
logical (c_bool), optional llatlon,
real (c_float), optional fvalidmin,
real (c_float), optional fvalidmax,
logical (c_bool), optional write_time_bounds )
private

Definition at line 3695 of file netcdf4_support.F90.

◆ nf_set_standard_dimensions()

subroutine netcdf4_support::nf_set_standard_dimensions ( type (t_netcdf4_file ) ncfile,
integer (c_int) inx,
integer (c_int) iny,
logical (c_bool), optional write_time_bounds )
private

define the time dimension;

define the y dimension;

define the x dimension;

define the auxiliary dimension;

Definition at line 3441 of file netcdf4_support.F90.

◆ nf_set_standard_variables()

subroutine netcdf4_support::nf_set_standard_variables ( type (t_netcdf4_file ) ncfile,
character (len=*) svarname_z,
logical (c_bool), optional llatlon,
logical (c_bool), optional write_time_bounds )
private

Definition at line 3498 of file netcdf4_support.F90.

◆ nf_set_start_count_stride()

subroutine netcdf4_support::nf_set_start_count_stride ( type (t_netcdf4_file ) ncfile)
private

need to subtract 1 from the start index: we are using the netCDF C API, in which index values are relative to zero

note: this assumes that the row numbers increase from top to bottom, while the Y coordinates decrease top to bottom

count must be set to the number of values! maxval minus minval results in a diagonal pattern in the input as we read in the incorrect number of results

Definition at line 1237 of file netcdf4_support.F90.

◆ nf_set_z_variable_name()

subroutine netcdf4_support::nf_set_z_variable_name ( type (t_netcdf4_file ) ncfile,
character (len=*) svarname_z )
private

Definition at line 1198 of file netcdf4_support.F90.

◆ nf_trap()

subroutine netcdf4_support::nf_trap ( integer (c_int) iresultcode,
character (len=*), optional sfilename,
integer (c_int), optional ilinenumber,
character (len=*), optional netcdf_filename )
private

Definition at line 1583 of file netcdf4_support.F90.

Here is the call graph for this function:

Variable Documentation

◆ column

integer (c_int), parameter netcdf4_support::column = 1
private

Definition at line 157 of file netcdf4_support.F90.

◆ leap_year

integer (c_int), parameter netcdf4_support::leap_year = 0
private

Definition at line 160 of file netcdf4_support.F90.

◆ nc_64bit_offset

integer(c_int), parameter netcdf4_support::nc_64bit_offset = 512
private

Definition at line 107 of file netcdf4_support.F90.

◆ nc_align_chunk

integer(c_int), parameter netcdf4_support::nc_align_chunk = -1
private

Definition at line 109 of file netcdf4_support.F90.

◆ nc_aux

integer (c_int), parameter, public netcdf4_support::nc_aux = 3

Definition at line 142 of file netcdf4_support.F90.

◆ nc_bottom

integer (c_int), parameter, public netcdf4_support::nc_bottom = 1

Definition at line 155 of file netcdf4_support.F90.

◆ nc_by

integer (c_int), parameter netcdf4_support::nc_by = 2
private

Definition at line 150 of file netcdf4_support.F90.

◆ nc_byte

integer(c_int), parameter netcdf4_support::nc_byte = 1
private

Definition at line 72 of file netcdf4_support.F90.

◆ nc_char

integer(c_int), parameter netcdf4_support::nc_char = 2
private

Definition at line 73 of file netcdf4_support.F90.

◆ nc_classic_model

integer(c_int), parameter netcdf4_support::nc_classic_model = 256
private

Definition at line 127 of file netcdf4_support.F90.

◆ nc_clobber

integer(c_int), parameter netcdf4_support::nc_clobber = 0
private

Definition at line 100 of file netcdf4_support.F90.

◆ nc_crs

integer (c_int), parameter, public netcdf4_support::nc_crs = 4

Definition at line 143 of file netcdf4_support.F90.

◆ nc_deflate_no

integer (c_int), parameter netcdf4_support::nc_deflate_no = 0
private

Definition at line 124 of file netcdf4_support.F90.

◆ nc_deflate_yes

integer (c_int), parameter netcdf4_support::nc_deflate_yes = 1
private

Definition at line 123 of file netcdf4_support.F90.

◆ nc_double

integer(c_int), parameter netcdf4_support::nc_double = 6
private

Definition at line 78 of file netcdf4_support.F90.

◆ nc_fill

integer(c_int), parameter netcdf4_support::nc_fill = 0
private

Definition at line 102 of file netcdf4_support.F90.

◆ nc_fill_byte

integer(c_int), parameter netcdf4_support::nc_fill_byte = -127
private

Definition at line 87 of file netcdf4_support.F90.

◆ nc_fill_char

integer(c_int), parameter netcdf4_support::nc_fill_char = 0
private

Definition at line 86 of file netcdf4_support.F90.

◆ nc_fill_double

real(c_double), parameter netcdf4_support::nc_fill_double = -9.9e-20_c_double
private

Definition at line 93 of file netcdf4_support.F90.

◆ nc_fill_float

real(c_float), parameter, public netcdf4_support::nc_fill_float = -9999.0_c_float

Definition at line 92 of file netcdf4_support.F90.

◆ nc_fill_int

integer(c_int), parameter, public netcdf4_support::nc_fill_int = -2147483647

Definition at line 89 of file netcdf4_support.F90.

◆ nc_fill_short

integer(c_int), parameter netcdf4_support::nc_fill_short = -32767
private

Definition at line 88 of file netcdf4_support.F90.

◆ nc_first

integer (c_int), parameter netcdf4_support::nc_first = 0
private

Definition at line 148 of file netcdf4_support.F90.

◆ nc_float

integer(c_int), parameter, public netcdf4_support::nc_float = 5

Definition at line 77 of file netcdf4_support.F90.

◆ nc_format_64bit

integer(c_int), parameter netcdf4_support::nc_format_64bit = 2
private

Definition at line 111 of file netcdf4_support.F90.

◆ nc_format_classic

integer(c_int), parameter netcdf4_support::nc_format_classic = 1
private

Definition at line 110 of file netcdf4_support.F90.

◆ nc_format_netcdf4

integer(c_int), parameter netcdf4_support::nc_format_netcdf4 = 3
private

Definition at line 112 of file netcdf4_support.F90.

◆ nc_format_netcdf4_classic

integer(c_int), parameter netcdf4_support::nc_format_netcdf4_classic = 4
private

Definition at line 113 of file netcdf4_support.F90.

◆ nc_global

integer(c_int), parameter netcdf4_support::nc_global = -1
private

Definition at line 131 of file netcdf4_support.F90.

◆ nc_int

integer(c_int), parameter netcdf4_support::nc_int = 4
private

Definition at line 75 of file netcdf4_support.F90.

◆ nc_int64

integer(c_int), parameter netcdf4_support::nc_int64 = 10
private

Definition at line 82 of file netcdf4_support.F90.

◆ nc_last

integer (c_int), parameter netcdf4_support::nc_last = 1
private

Definition at line 149 of file netcdf4_support.F90.

◆ nc_lat

integer (c_int), parameter, public netcdf4_support::nc_lat = 5

Definition at line 144 of file netcdf4_support.F90.

◆ nc_left

integer (c_int), parameter, public netcdf4_support::nc_left = 0

Definition at line 152 of file netcdf4_support.F90.

◆ nc_lock

integer(c_int), parameter netcdf4_support::nc_lock = 1024
private

Definition at line 104 of file netcdf4_support.F90.

◆ nc_lon

integer (c_int), parameter, public netcdf4_support::nc_lon = 6

Definition at line 145 of file netcdf4_support.F90.

◆ nc_long

integer(c_int), parameter netcdf4_support::nc_long = NC_INT
private

Definition at line 76 of file netcdf4_support.F90.

◆ nc_max_attrs

integer(c_int), parameter netcdf4_support::nc_max_attrs = 8192
private

Definition at line 117 of file netcdf4_support.F90.

◆ nc_max_dims

integer(c_int), parameter netcdf4_support::nc_max_dims = 1024
private

Definition at line 116 of file netcdf4_support.F90.

◆ nc_max_name

integer(c_int), parameter netcdf4_support::nc_max_name = 256
private

Definition at line 119 of file netcdf4_support.F90.

◆ nc_max_vars

integer(c_int), parameter netcdf4_support::nc_max_vars = 8192
private

Definition at line 118 of file netcdf4_support.F90.

◆ nc_na_int

integer(c_int), parameter netcdf4_support::nc_na_int = -9999
private

Definition at line 90 of file netcdf4_support.F90.

◆ nc_nat

integer(c_int), parameter netcdf4_support::nc_nat = 0
private

Definition at line 71 of file netcdf4_support.F90.

◆ nc_netcdf4

integer(c_int), parameter netcdf4_support::nc_netcdf4 = 4096
private

Definition at line 126 of file netcdf4_support.F90.

◆ nc_noclobber

integer(c_int), parameter netcdf4_support::nc_noclobber = 4
private

Definition at line 101 of file netcdf4_support.F90.

◆ nc_nofill

integer(c_int), parameter netcdf4_support::nc_nofill = 256
private

Definition at line 103 of file netcdf4_support.F90.

◆ nc_nowrite

integer(c_int), parameter netcdf4_support::nc_nowrite = 0
private

Definition at line 98 of file netcdf4_support.F90.

◆ nc_readonly

integer(c_int), public netcdf4_support::nc_readonly = 0

Definition at line 51 of file netcdf4_support.F90.

◆ nc_readwrite

integer(c_int), public netcdf4_support::nc_readwrite = 1

Definition at line 52 of file netcdf4_support.F90.

◆ nc_right

integer (c_int), parameter, public netcdf4_support::nc_right = 1

Definition at line 153 of file netcdf4_support.F90.

◆ nc_share

integer(c_int), parameter netcdf4_support::nc_share = 2048
private

Definition at line 105 of file netcdf4_support.F90.

◆ nc_short

integer(c_int), parameter netcdf4_support::nc_short = 3
private

Definition at line 74 of file netcdf4_support.F90.

◆ nc_shuffle_no

integer (c_int), parameter netcdf4_support::nc_shuffle_no = 0
private

Definition at line 122 of file netcdf4_support.F90.

◆ nc_shuffle_yes

integer (c_int), parameter netcdf4_support::nc_shuffle_yes = 1
private

Definition at line 121 of file netcdf4_support.F90.

◆ nc_sizehint_default

integer(c_int), parameter netcdf4_support::nc_sizehint_default = 0
private

Definition at line 108 of file netcdf4_support.F90.

◆ nc_strict_nc3

integer(c_int), parameter netcdf4_support::nc_strict_nc3 = 8
private

Definition at line 106 of file netcdf4_support.F90.

◆ nc_string

integer(c_int), parameter netcdf4_support::nc_string = 12
private

Definition at line 84 of file netcdf4_support.F90.

◆ nc_time

integer (c_int), parameter, public netcdf4_support::nc_time = 0

@TODO: implement a more flexible way of tracking variable IDs; presently the code can break if lat and lon are omitted, but time_bnds is included; this is because if the lat and lon variables are not defined, NC_TIME_BNDS may be 4 or 5 or some other value.

Definition at line 138 of file netcdf4_support.F90.

◆ nc_time_bnds

integer (c_int), public netcdf4_support::nc_time_bnds = 7

Definition at line 146 of file netcdf4_support.F90.

◆ nc_top

integer (c_int), parameter, public netcdf4_support::nc_top = 0

Definition at line 154 of file netcdf4_support.F90.

◆ nc_ubyte

integer(c_int), parameter netcdf4_support::nc_ubyte = 7
private

Definition at line 79 of file netcdf4_support.F90.

◆ nc_uint

integer(c_int), parameter netcdf4_support::nc_uint = 9
private

Definition at line 81 of file netcdf4_support.F90.

◆ nc_uint64

integer(c_int), parameter netcdf4_support::nc_uint64 = 11
private

Definition at line 83 of file netcdf4_support.F90.

◆ nc_unlimited

integer(c_int), parameter netcdf4_support::nc_unlimited = 0
private

Definition at line 130 of file netcdf4_support.F90.

◆ nc_ushort

integer(c_int), parameter netcdf4_support::nc_ushort = 8
private

Definition at line 80 of file netcdf4_support.F90.

◆ nc_write

integer(c_int), parameter netcdf4_support::nc_write = 1
private

Definition at line 99 of file netcdf4_support.F90.

◆ nc_x

integer (c_int), parameter, public netcdf4_support::nc_x = 2

Definition at line 140 of file netcdf4_support.F90.

◆ nc_y

integer (c_int), parameter, public netcdf4_support::nc_y = 1

Definition at line 139 of file netcdf4_support.F90.

◆ nc_z

integer (c_int), parameter, public netcdf4_support::nc_z = 3

Definition at line 141 of file netcdf4_support.F90.

◆ netcdf_data_type

character (len=6), dimension(0:6), parameter netcdf4_support::netcdf_data_type = ["nat ", "byte ", "char ", "short ", "int ", "float ", "double" ]
private

Definition at line 170 of file netcdf4_support.F90.

◆ netcdf_format_string

character (len=25), dimension(4), parameter netcdf4_support::netcdf_format_string = ["NC_FORMAT_CLASSIC ", "NC_FORMAT_64BIT ", "NC_FORMAT_NETCDF4 ", "NC_FORMAT_NETCDF4_CLASSIC" ]
private

Definition at line 164 of file netcdf4_support.F90.

◆ noleap_year

integer (c_int), parameter netcdf4_support::noleap_year = 1
private

Definition at line 161 of file netcdf4_support.F90.

◆ row

integer (c_int), parameter netcdf4_support::row = 2
private

Definition at line 158 of file netcdf4_support.F90.

◆ year_is_360_days

integer (c_int), parameter netcdf4_support::year_is_360_days = 2
private

Definition at line 162 of file netcdf4_support.F90.