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_netcdf_dimension
type  t_netcdf_attribute
type  t_netcdf_variable
type  t_netcdf4_file

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 1612 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 3192 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 318 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 1625 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 2674 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 1946 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 1908 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 2041 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 2083 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 1656 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 730 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 1004 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 910 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 661 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 1510 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 4488 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 4429 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 4551 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 4178 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 2030 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 2061 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 2876 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 3268 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 371 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 3326 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 3367 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 3407 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 4125 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 4149 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 3388 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 3345 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 2786 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 2999 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 2890 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 1314 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 2590 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 2653 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 2506 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 2485 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 2569 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 2632 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 2464 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 3074 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 2375 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 2307 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 2235 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 2164 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 2548 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 2611 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 2527 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 2443 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 3240 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 1355 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 2961 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 633 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 356 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 344 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 387 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 1478 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 1792 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 1670 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 1708 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 4212 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 4281 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 4094 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 4063 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 3356 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 514 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 465 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 566 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 599 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 3146 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 1276 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 449 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 481 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 3588 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 1194 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 3685 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 3431 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 3488 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 1222 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 1183 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 1567 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 158 of file netcdf4_support.F90.

◆ leap_year

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

Definition at line 161 of file netcdf4_support.F90.

◆ nc_64bit_offset

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

Definition at line 108 of file netcdf4_support.F90.

◆ nc_align_chunk

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

Definition at line 110 of file netcdf4_support.F90.

◆ nc_aux

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

Definition at line 143 of file netcdf4_support.F90.

◆ nc_bottom

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

Definition at line 156 of file netcdf4_support.F90.

◆ nc_by

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

Definition at line 151 of file netcdf4_support.F90.

◆ nc_byte

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

Definition at line 73 of file netcdf4_support.F90.

◆ nc_char

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

Definition at line 74 of file netcdf4_support.F90.

◆ nc_classic_model

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

Definition at line 128 of file netcdf4_support.F90.

◆ nc_clobber

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

Definition at line 101 of file netcdf4_support.F90.

◆ nc_crs

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

Definition at line 144 of file netcdf4_support.F90.

◆ nc_deflate_no

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

Definition at line 125 of file netcdf4_support.F90.

◆ nc_deflate_yes

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

Definition at line 124 of file netcdf4_support.F90.

◆ nc_double

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

Definition at line 79 of file netcdf4_support.F90.

◆ nc_fill

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

Definition at line 103 of file netcdf4_support.F90.

◆ nc_fill_byte

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

Definition at line 88 of file netcdf4_support.F90.

◆ nc_fill_char

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

Definition at line 87 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 94 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 93 of file netcdf4_support.F90.

◆ nc_fill_int

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

Definition at line 90 of file netcdf4_support.F90.

◆ nc_fill_short

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

Definition at line 89 of file netcdf4_support.F90.

◆ nc_first

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

Definition at line 149 of file netcdf4_support.F90.

◆ nc_float

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

Definition at line 78 of file netcdf4_support.F90.

◆ nc_format_64bit

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

Definition at line 112 of file netcdf4_support.F90.

◆ nc_format_classic

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

Definition at line 111 of file netcdf4_support.F90.

◆ nc_format_netcdf4

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

Definition at line 113 of file netcdf4_support.F90.

◆ nc_format_netcdf4_classic

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

Definition at line 114 of file netcdf4_support.F90.

◆ nc_global

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

Definition at line 132 of file netcdf4_support.F90.

◆ nc_int

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

Definition at line 76 of file netcdf4_support.F90.

◆ nc_int64

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

Definition at line 83 of file netcdf4_support.F90.

◆ nc_last

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

Definition at line 150 of file netcdf4_support.F90.

◆ nc_lat

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

Definition at line 145 of file netcdf4_support.F90.

◆ nc_left

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

Definition at line 153 of file netcdf4_support.F90.

◆ nc_lock

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

Definition at line 105 of file netcdf4_support.F90.

◆ nc_lon

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

Definition at line 146 of file netcdf4_support.F90.

◆ nc_long

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

Definition at line 77 of file netcdf4_support.F90.

◆ nc_max_attrs

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

Definition at line 118 of file netcdf4_support.F90.

◆ nc_max_dims

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

Definition at line 117 of file netcdf4_support.F90.

◆ nc_max_name

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

Definition at line 120 of file netcdf4_support.F90.

◆ nc_max_vars

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

Definition at line 119 of file netcdf4_support.F90.

◆ nc_na_int

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

Definition at line 91 of file netcdf4_support.F90.

◆ nc_nat

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

Definition at line 72 of file netcdf4_support.F90.

◆ nc_netcdf4

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

Definition at line 127 of file netcdf4_support.F90.

◆ nc_noclobber

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

Definition at line 102 of file netcdf4_support.F90.

◆ nc_nofill

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

Definition at line 104 of file netcdf4_support.F90.

◆ nc_nowrite

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

Definition at line 99 of file netcdf4_support.F90.

◆ nc_readonly

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

Definition at line 52 of file netcdf4_support.F90.

◆ nc_readwrite

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

Definition at line 53 of file netcdf4_support.F90.

◆ nc_right

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

Definition at line 154 of file netcdf4_support.F90.

◆ nc_share

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

Definition at line 106 of file netcdf4_support.F90.

◆ nc_short

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

Definition at line 75 of file netcdf4_support.F90.

◆ nc_shuffle_no

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

Definition at line 123 of file netcdf4_support.F90.

◆ nc_shuffle_yes

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

Definition at line 122 of file netcdf4_support.F90.

◆ nc_sizehint_default

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

Definition at line 109 of file netcdf4_support.F90.

◆ nc_strict_nc3

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

Definition at line 107 of file netcdf4_support.F90.

◆ nc_string

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

Definition at line 85 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 139 of file netcdf4_support.F90.

◆ nc_time_bnds

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

Definition at line 147 of file netcdf4_support.F90.

◆ nc_top

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

Definition at line 155 of file netcdf4_support.F90.

◆ nc_ubyte

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

Definition at line 80 of file netcdf4_support.F90.

◆ nc_uint

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

Definition at line 82 of file netcdf4_support.F90.

◆ nc_uint64

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

Definition at line 84 of file netcdf4_support.F90.

◆ nc_unlimited

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

Definition at line 131 of file netcdf4_support.F90.

◆ nc_ushort

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

Definition at line 81 of file netcdf4_support.F90.

◆ nc_write

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

Definition at line 100 of file netcdf4_support.F90.

◆ nc_x

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

Definition at line 141 of file netcdf4_support.F90.

◆ nc_y

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

Definition at line 140 of file netcdf4_support.F90.

◆ nc_z

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

Definition at line 142 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 171 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 165 of file netcdf4_support.F90.

◆ noleap_year

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

Definition at line 162 of file netcdf4_support.F90.

◆ row

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

Definition at line 159 of file netcdf4_support.F90.

◆ year_is_360_days

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

Definition at line 163 of file netcdf4_support.F90.