pnetcdf_f77 man page on DragonFly

Man page or keyword search:  
man Server   44335 pages
apropos Keyword Search (all sections)
Output format
DragonFly logo
[printable version]

PNETCDF(3)		       LIBRARY FUNCTIONS		    PNETCDF(3)

NAME
       PnetCDF	-  Parallel library for accessing files in Network Common Data
       Form (CDF, CDF-2 and CDF-5 formats)

SYNOPSIS
       include "pnetcdf.inc"

   Most Systems:
       mpif77 ...  -lpnetcdf

   CRAY PVP Systems:
       f90 -dp -i64 ... -lnetcdf

       Complete documentation for the PnetCDF libraries can be	found  at  the
       PnetCDF website: http://cucis.ece.northwestern.edu/projects/PnetCDF/.

LIBRARY VERSION
       This  document  describes Parallel netCDF APIs for the FORTRAN program‐
       ming language.

       character*80 nfmpi_inq_libvers(void)

	      (Corresponds to nf_inq_libvers() in netCDF)

	      Returns a string identifying the version of the PnetCDF library,
	      and when it was built, like: "1.6.1 of 01 Jun 2015".

       The RCS ident(1) command will find a string like "$Id: @(#) PnetCDF li‐
       brary version 1.6.1 of 01 Jun 2015 $" in the library. The SCCS  what(1)
       command	will  find  a string like "PnetCDF library version 1.6.1 of 01
       Jun 2015".

RETURN VALUES
       All PnetCDF functions (except nfmpi_inq_libvers() and nfmpi_strerror())
       return an integer status.

       If this returned status value is not equal to NF_NOERR (zero), it indi‐
       cates that an error occurred. The possible status values are defined in
       pnetcdf.inc.

       character*80 nfmpi_strerror(integer status)

	      (Corresponds to nf_strerror() in netCDF)

	      Returns  a  string textual translation of the status value, like
	      "Attribute or variable name contains illegal characters" or  "No
	      such file or directory".

FILE OPERATIONS
       integer function nfmpi_create(integer comm, character*(*) path, integer
	      cmode, integer info, integer ncid)

	      (Corresponds to nf_create() in netCDF)

	      Creates a new netCDF dataset at path collectively by a group  of
	      MPI  processes specified by comm, returning a netCDF ID in ncid.
	      The argument cmode may include the bitwise-or of	the  following
	      flags:  NF_NOCLOBBER  to	protect	 existing datasets (default is
	      NF_CLOBBER, silently blows them  away),  NF_SHARE	 for  stronger
	      metadata	data  consistency control, NF_64BIT_OFFSET to create a
	      file in the 64-bit offset format (CDF-2), as opposed to  classic
	      format,  the  default,  or NF_64BIT_DATA to create a file in the
	      64-bit data  format  (CDF-5).   Use  either  NF_64BIT_OFFSET  or
	      NF_64BIT_DATA.   The 64-bit offset format allows the creation of
	      very large files with far fewer restrictions than netCDF classic
	      format,  but  can only be read by the netCDF library version 3.6
	      or greater. Users are cautioned that files that use  the	64-bit
	      offset  format  will  not	 be  recognized by netCDF applications
	      linked to an earlier version of the  netCDF  library  than  3.6.
	      Applications  linked  to	version	 3.6  or later will be able to
	      transparently access either the classic format or 64-bit	offset
	      format.	The  64-bit  data  format  allows the creation of very
	      large array variables.  CDF-5 files currently will not be recog‐
	      nized by netCDF 3 or 4 library.

	      The  argument  cmode  must be consistent among all MPI processes
	      that collectively create the file.  The argument info is an  MPI
	      info  object.   Users can use it to supply the file access hints
	      further performance improvement.	 The  hints  include  existing
	      MPI-IO hints as well as hints defined and used in PnetCDF.

	      When a netCDF dataset is created, it is opened in NF_WRITE mode.
	      When this function returns, the new netCDF dataset is in	define
	      mode.

       integer	function  nfmpi_open(integer comm, character*(*) path, integer
	      mode, integer info, integer ncid)

	      (Corresponds to nf_open() in netCDF)

	      Opens an existing netCDF dataset at path collectively by a group
	      of  MPI  processes  specified  by comm, returning a netCDF ID in
	      ncid.  The type of access is described by	 the  mode  parameter,
	      which  may  include  the	bitwise-or  of	the  following	flags:
	      NF_WRITE for read-write access (default read-only), NF_SHARE for
	      stronger metadata data consistency control.

	      The  argument  mode  must	 be consistent among all MPI processes
	      that collectively open the file.	The argument info  is  an  MPI
	      info  object.   Users can use it to supply the file access hints
	      further performance improvement.	 The  hints  include  existing
	      MPI-IO hints as well as hints defined and used in PnetCDF.

       integer function nfmpi_redef(integer ncid)

	      (Corresponds to nf_redef() in netCDF)

	      Puts  an	open  netCDF  dataset into define mode, so dimensions,
	      variables, and attributes can be added or renamed and attributes
	      can be deleted.

       integer function nfmpi_enddef(integer ncid)

	      (Corresponds to nf_enddef() in netCDF)

	      Takes  an	 open  netCDF dataset out of define mode.  The changes
	      made to the netCDF dataset while	it  was	 in  define  mode  are
	      checked  and committed to disk if no problems occurred.  After a
	      successful call, variable data can be read  or  written  to  the
	      dataset.

       integer function nfmpi_sync(integer ncid)

	      (Corresponds to nf_sync() in netCDF)

	      Unless  the  NF_SHARE  bit  is set in nfmpi_open() or nfmpi_cre‐
	      ate(), data written by PnetCDF APIs may be cached by local  file
	      system  on  each	compute node.  This API flushes cached data by
	      calling MPI_File_sync.

       integer function nfmpi_abort(integer ncid)

	      (Corresponds to nf_abort() in netCDF)

	      You don't need to call this function.  This function  is	called
	      automatically  by nfmpi_close() if the netCDF was in define mode
	      and something goes wrong with the commit.	 If the netCDF dataset
	      isn't  in	 define	 mode,	then  this  function  is equivalent to
	      nfmpi_close().  If it is called after nfmpi_redef(), but	before
	      nfmpi_enddef(),  the  new	 definitions are not committed and the
	      dataset is closed.  If it is called after nfmpi_create() but be‐
	      fore nfmpi_enddef(), the dataset disappears.

       integer function nfmpi_close(integer ncid)

	      (Corresponds to nf_close() in netCDF)

	      Closes  an  open	netCDF	dataset.   If the dataset is in define
	      mode, nfmpi_enddef() will be called  before  closing.   After  a
	      dataset is closed, its ID may be reassigned to another dataset.

       integer	function nfmpi_inq(integer ncid, integer ndims, integer nvars,
	      integer natts, integer unlimdimid)

	      (Corresponds to nf_inq() in netCDF)

       integer function nfmpi_inq_ndims(integer ncid, integer ndims)

	      (Corresponds to nf_inq_ndims() in netCDF)

       integer function nfmpi_inq_nvars(integer ncid, integer nvars)

	      (Corresponds to nf_inq_nvars() in netCDF)

       integer function nfmpi_inq_natts(integer ncid, integer natts)

	      (Corresponds to nf_inq_natts() in netCDF)

       integer function nfmpi_inq_unlimdim(integer ncid, integer unlimdimid)

	      (Corresponds to nf_inq_unlimdim() in netCDF)

       integer function nfmpi_inq_format(integer ncid, integer formatn)

	      (Corresponds to nf_inq_format() in netCDF)

	      Use these functions to find out what is  in  a  netCDF  dataset.
	      Upon successful return, ndims will contain  the number of dimen‐
	      sions defined for this netCDF dataset, nvars  will  contain  the
	      number  of  variables,  natts  will  contain  the	 number of at‐
	      tributes, and unlimdimid will contain the dimension  ID  of  the
	      unlimited dimension if one exists, or 0 otherwise.  formatn will
	      contain the version number  of  the  dataset  <format>,  one  of
	      NF_FORMAT_CLASSIC, NF_FORMAT_64BIT, or NF_FORMAT_64BIT_DATA.

       integer	function nfmpi_def_dim(integer ncid, character*(*) name, inte‐
	      ger(kind=MPI_OFFSET) len, integer dimid)

	      (Corresponds to nf_def_dim() in netCDF)

	      Adds a new dimension to an open netCDF dataset, which must be in
	      define  mode.   name  is the dimension name.  dimid will contain
	      the dimension ID of the newly created dimension.

DIMENSIONS
       integer function nfmpi_inq_dimid(integer ncid, character*(*) name,  in‐
	      teger dimid)

	      (Corresponds to nf_inq_dimid() in netCDF)

	      Given  a dimension name, returns the ID of a netCDF dimension in
	      dimid.

       integer function nfmpi_inq_dim(integer  ncid,  integer  dimid,  charac‐
	      ter*(*) name, integer(kind=MPI_OFFSET) len)

	      (Corresponds to nf_inq_dim() in netCDF)

       integer function nfmpi_inq_dimname(integer ncid, integer dimid, charac‐
	      ter*(*) name)

	      (Corresponds to nf_inq_dimname() in netCDF)

       integer function nfmpi_inq_dimlen(integer ncid,	integer	 dimid,	 inte‐
	      ger(kind=MPI_OFFSET) len)

	      (Corresponds to nf_inq_dimlen() in netCDF)

	      Use these functions to find out about a dimension.

	      name  should  be	big enough (NF_MAX_NAME) to hold the dimension
	      name as the name will be copied into your storage.   The	length
	      return  parameter,  len  will contain the size of the dimension.
	      For the unlimited dimension, the returned length is the  current
	      maximum  value  used for writing into any of the variables which
	      use the dimension.

       integer function nfmpi_rename_dim(integer ncid, integer dimid,  charac‐
	      ter*(*) name)

	      (Corresponds to nf_rename_dim() in netCDF)

	      Renames an existing dimension in an open netCDF dataset.	If the
	      new name is longer than the old name, the netCDF dataset must be
	      in  define mode.	You cannot rename a dimension to have the same
	      name as another dimension.

VARIABLES
       integer function nfmpi_def_var(integer ncid, character*(*) name,	 inte‐
	      ger xtype, integer ndims, integer dimids(1), integer varid)

	      (Corresponds to nf_def_var() in netCDF)

	      Adds  a  new variable to a netCDF dataset. The netCDF must be in
	      define mode.  varid will be  set	to  the	 netCDF	 variable  ID.
	      ndims  will  be the number of dimensions for the variable.  name
	      will be the name of the netCDF variable.	xtype is the external,
	      netCDF  type  of	the  variable  and  should  be	one of NF_BYTE
	      NF_CHAR, NF_SHORT, NF_INT, NF_FLOAT, or NF_DOUBLE, for CDF-1 and
	      CDF-2  file  formats.   CDF-5 defines additional external types:
	      NF_UBYTE, NF_USHORT, NF_UINT, NF_INT64, and  NF_UINT64.	dimids
	      argument is a vector of ndims dimension IDs corresponding to the
	      variable dimensions.

       integer function nfmpi_inq_varid(integer ncid, character*(*) name,  in‐
	      teger varid)

	      (Corresponds to nf_inq_varid() in netCDF)

	      Returns the ID of a netCDF variable in varid given its name.

       integer	function  nfmpi_inq_var(integer	 ncid,	integer varid, charac‐
	      ter*(*) name, integer xtype, integer ndims,  integer  dimids(1),
	      integer natts)

	      (Corresponds to nf_inq_var() in netCDF)

       integer function nfmpi_inq_varname(integer ncid, integer varid, charac‐
	      ter*(*) name)

	      (Corresponds to nf_inq_varname() in netCDF)

       integer function nfmpi_inq_vartype(integer ncid, integer varid, integer
	      xtype)

	      (Corresponds to nf_inq_vartype() in netCDF)

       integer	function nfmpi_inq_varndims(integer ncid, integer varid, inte‐
	      ger ndims)

	      (Corresponds to nf_inq_varndims() in netCDF)

       integer function nfmpi_inq_vardimid(integer ncid, integer varid,	 inte‐
	      ger dimids(1))

	      (Corresponds to nf_inq_vardimid() in netCDF)

       integer	function nfmpi_inq_varnatts(integer ncid, integer varid, inte‐
	      ger natts)

	      (Corresponds to nf_inq_varnatts() in netCDF)

	      Returns information about a netCDF variable, given its ID.

       integer function nfmpi_rename_var(integer ncid, integer varid,  charac‐
	      ter*(*) name)

	      (Corresponds to nf_rename_var() in netCDF)

	      Changes  the  name  of  a	 netCDF	 variable.  If the new name is
	      longer than the old name, the netCDF must	 be  in	 define	 mode.
	      You  cannot  rename  a variable to have the name of any existing
	      variable.

WRITING AND READING WHOLE VARIABLES
       integer function nfmpi_put_var_text(integer ncid, integer varid,	 char‐
	      acter*(*) out)

	      (Corresponds to nf_put_var_text() in netCDF)

       integer	function nfmpi_put_var_int1(integer ncid, integer varid, inte‐
	      ger*1 out(1))

	      (Corresponds to nf_put_var_int1() in netCDF)

       integer function nfmpi_put_var_int2(integer ncid, integer varid,	 inte‐
	      ger*2 out(1))

	      (Corresponds to nf_put_var_int2() in netCDF)

       integer function nfmpi_put_var_int(integer ncid, integer varid, integer
	      out(1))

	      (Corresponds to nf_put_var_int() in netCDF)

       integer function nfmpi_put_var_real(integer ncid, integer  varid,  real
	      out(1))

	      (Corresponds to nf_put_var_real() in netCDF)

       integer function nfmpi_put_var_double(integer ncid, integer varid, dou‐
	      bleprecision out(1))

	      (Corresponds to nf_put_var_double() in netCDF)

	      Writes an entire netCDF variable (i.e.  all  the	values).   The
	      netCDF  dataset  must be open and in data mode.  The type of the
	      data is specified in the function name, and it is	 converted  to
	      the external type of the specified variable, if possible, other‐
	      wise an NF_ERANGE error is returned. Note that rounding  is  not
	      performed	 during	 the  conversion.  Floating  point numbers are
	      truncated when converted to integers.

       integer function nfmpi_get_var_text(integer ncid, integer varid,	 char‐
	      acter*(*) in)

	      (Corresponds to nf_get_var_text() in netCDF)

       integer	function nfmpi_get_var_int1(integer ncid, integer varid, inte‐
	      ger*1 in(1))

	      (Corresponds to nf_get_var_int1() in netCDF)

       integer function nfmpi_get_var_int2(integer ncid, integer varid,	 inte‐
	      ger*2 in(1))

	      (Corresponds to nf_get_var_int2() in netCDF)

       integer function nfmpi_get_var_int(integer ncid, integer varid, integer
	      in(1))

	      (Corresponds to nf_get_var_int() in netCDF)

       integer function nfmpi_get_var_real(integer ncid, integer  varid,  real
	      in(1))

	      (Corresponds to nf_get_var_real() in netCDF)

       integer function nfmpi_get_var_double(integer ncid, integer varid, dou‐
	      bleprecision in(1))

	      (Corresponds to nf_get_var_double() in netCDF)

	      Reads an entire netCDF variable  (i.e.  all  the	values).   The
	      netCDF  dataset must be open and in data mode.  The data is con‐
	      verted from the external type of the specified variable, if nec‐
	      essary,  to the type specified in the function name.  If conver‐
	      sion is not possible, an NF_ERANGE error is returned.

WRITING AND READING ONE DATUM
       integer function nfmpi_put_var1_text(integer ncid, integer varid, inte‐
	      ger(kind=MPI_OFFSET) index(1), character*1 *out)

	      (Corresponds to nf_put_var1_text() in netCDF)

       integer function nfmpi_put_var1_int1(integer ncid, integer varid, inte‐
	      ger(kind=MPI_OFFSET) index(1), integer*1 *out)

	      (Corresponds to nf_put_var1_int1() in netCDF)

       integer function nfmpi_put_var1_int2(integer ncid, integer varid, inte‐
	      ger(kind=MPI_OFFSET) index(1), integer*2 *out)

	      (Corresponds to nf_put_var1_int2() in netCDF)

       integer	function nfmpi_put_var1_int(integer ncid, integer varid, inte‐
	      ger(kind=MPI_OFFSET) index(1), integer *out)

	      (Corresponds to nf_put_var1_int() in netCDF)

       integer function nfmpi_put_var1_real(integer ncid, integer varid, inte‐
	      ger(kind=MPI_OFFSET) index(1), real *out)

	      (Corresponds to nf_put_var1_real() in netCDF)

       integer function nfmpi_put_var1_double(integer ncid, integer varid, in‐
	      teger(kind=MPI_OFFSET) index(1), doubleprecision *out)

	      (Corresponds to nf_put_var1_double() in netCDF)

	      Puts a single data value into a variable at the  position	 index
	      of an open netCDF dataset that is in data mode.  The type of the
	      data is specified in the function name, and it is	 converted  to
	      the external type of the specified variable, if possible, other‐
	      wise an NF_ERANGE error is returned.

       integer function nfmpi_get_var1_text(integer ncid, integer varid, inte‐
	      ger(kind=MPI_OFFSET) index(1), character*1 in)

	      (Corresponds to nf_get_var1_text() in netCDF)

       integer function nfmpi_get_var1_int1(integer ncid, integer varid, inte‐
	      ger(kind=MPI_OFFSET) index(1), integer*1 in)

	      (Corresponds to nf_get_var1_int1() in netCDF)

       integer function nfmpi_get_var1_int2(integer ncid, integer varid, inte‐
	      ger(kind=MPI_OFFSET) index(1), integer*2 in)

	      (Corresponds to nf_get_var1_int2() in netCDF)

       integer	function nfmpi_get_var1_int(integer ncid, integer varid, inte‐
	      ger(kind=MPI_OFFSET) index(1), integer in)

	      (Corresponds to nf_get_var1_int() in netCDF)

       integer function nfmpi_get_var1_real(integer ncid, integer varid, inte‐
	      ger(kind=MPI_OFFSET) index(1), real in)

	      (Corresponds to nf_get_var1_real() in netCDF)

       integer function nfmpi_get_var1_double(integer ncid, integer varid, in‐
	      teger(kind=MPI_OFFSET) index(1), doubleprecision in)

	      (Corresponds to nf_get_var1_double() in netCDF)

	      Gets a single data value from a variable at the  position	 index
	      of  an  open  netCDF  dataset that is in data mode.  The data is
	      converted from the external type of the specified	 variable,  if
	      necessary,  to the type specified in the function name.  If con‐
	      version is not possible, an NF_ERANGE error is returned.

WRITING AND READING AN ARRAY
       integer function nfmpi_put_vara_text(integer ncid, integer varid, inte‐
	      ger(kind=MPI_OFFSET)	start(1),     integer(kind=MPI_OFFSET)
	      count(1), character*(*) out)

	      (Corresponds to nf_put_vara_text() in netCDF)

       integer function nfmpi_put_vara_int1(integer ncid, integer varid, inte‐
	      ger(kind=MPI_OFFSET)	start(1),     integer(kind=MPI_OFFSET)
	      count(1), integer*1 out(1))

	      (Corresponds to nf_put_vara_int1() in netCDF)

       integer function nfmpi_put_vara_int2(integer ncid, integer varid, inte‐
	      ger(kind=MPI_OFFSET)	start(1),     integer(kind=MPI_OFFSET)
	      count(1), integer*2 out(1))

	      (Corresponds to nf_put_vara_int2() in netCDF)

       integer function nfmpi_put_vara_int(integer ncid, integer varid,	 inte‐
	      ger(kind=MPI_OFFSET)	start(1),     integer(kind=MPI_OFFSET)
	      count(1), integer out(1))

	      (Corresponds to nf_put_vara_int() in netCDF)

       integer function nfmpi_put_vara_real(integer ncid, integer varid, inte‐
	      ger(kind=MPI_OFFSET)	start(1),     integer(kind=MPI_OFFSET)
	      count(1), real out(1))

	      (Corresponds to nf_put_vara_real() in netCDF)

       integer function nfmpi_put_vara_double(integer ncid, integer varid, in‐
	      teger(kind=MPI_OFFSET)	 start(1),    integer(kind=MPI_OFFSET)
	      count(1), doubleprecision out(1))

	      (Corresponds to nf_put_vara_double() in netCDF)

	      Writes an array section of values into a netCDF variable	of  an
	      open netCDF dataset, which must be in data mode.	The array sec‐
	      tion is specified by the start and count vectors, which give the
	      starting	index  and count of values along each dimension of the
	      specified variable.  The type of the data is  specified  in  the
	      function name and is converted to the external type of the spec‐
	      ified variable, if possible, otherwise an NF_ERANGE error is re‐
	      turned.

       integer function nfmpi_get_vara_text(integer ncid, integer varid, inte‐
	      ger(kind=MPI_OFFSET)     start(1),      integer(kind=MPI_OFFSET)
	      count(1), character*(*) in)

	      (Corresponds to nf_get_vara_text() in netCDF)

       integer function nfmpi_get_vara_int1(integer ncid, integer varid, inte‐
	      ger(kind=MPI_OFFSET)     start(1),      integer(kind=MPI_OFFSET)
	      count(1), integer*1 in(1))

	      (Corresponds to nf_get_vara_int1() in netCDF)

       integer function nfmpi_get_vara_int2(integer ncid, integer varid, inte‐
	      ger(kind=MPI_OFFSET)     start(1),      integer(kind=MPI_OFFSET)
	      count(1), integer*2 in(1))

	      (Corresponds to nf_get_vara_int2() in netCDF)

       integer	function nfmpi_get_vara_int(integer ncid, integer varid, inte‐
	      ger(kind=MPI_OFFSET)     start(1),      integer(kind=MPI_OFFSET)
	      count(1), integer in(1))

	      (Corresponds to nf_get_vara_int() in netCDF)

       integer function nfmpi_get_vara_real(integer ncid, integer varid, inte‐
	      ger(kind=MPI_OFFSET)     start(1),      integer(kind=MPI_OFFSET)
	      count(1), real in(1))

	      (Corresponds to nf_get_vara_real() in netCDF)

       integer function nfmpi_get_vara_double(integer ncid, integer varid, in‐
	      teger(kind=MPI_OFFSET)	start(1),     integer(kind=MPI_OFFSET)
	      count(1), doubleprecision in(1))

	      (Corresponds to nf_get_vara_double() in netCDF)

	      Reads  an	 array	section of values from a netCDF variable of an
	      open netCDF dataset, which must be in data mode.	The array sec‐
	      tion is specified by the start and count vectors, which give the
	      starting index and count of values along each dimension  of  the
	      specified	 variable.   The  data	is converted from the external
	      type of the specified variable, if necessary, to the type speci‐
	      fied  in	the  function name.  If conversion is not possible, an
	      NF_ERANGE error is returned.

WRITING AND READING A SLICED ARRAY
       integer function nfmpi_put_vars_text(integer ncid, integer varid, inte‐
	      ger(kind=MPI_OFFSET)	start(1),     integer(kind=MPI_OFFSET)
	      count(1), integer(kind=MPI_OFFSET) stride(1), character*(*) out)

	      (Corresponds to nf_put_vars_text() in netCDF)

       integer function nfmpi_put_vars_int1(integer ncid, integer varid, inte‐
	      ger(kind=MPI_OFFSET)	start(1),     integer(kind=MPI_OFFSET)
	      count(1), integer(kind=MPI_OFFSET) stride(1), integer*1 out(1))

	      (Corresponds to nf_put_vars_int1() in netCDF)

       integer function nfmpi_put_vars_int2(integer ncid, integer varid, inte‐
	      ger(kind=MPI_OFFSET)	start(1),     integer(kind=MPI_OFFSET)
	      count(1), integer(kind=MPI_OFFSET) stride(1), integer*2 out(1))

	      (Corresponds to nf_put_vars_int2() in netCDF)

       integer function nfmpi_put_vars_int(integer ncid, integer varid,	 inte‐
	      ger(kind=MPI_OFFSET)	start(1),     integer(kind=MPI_OFFSET)
	      count(1), integer(kind=MPI_OFFSET) stride(1), integer out(1))

	      (Corresponds to nf_put_vars_int() in netCDF)

       integer function nfmpi_put_vars_real(integer ncid, integer varid, inte‐
	      ger(kind=MPI_OFFSET)	start(1),     integer(kind=MPI_OFFSET)
	      count(1), integer(kind=MPI_OFFSET) stride(1), real out(1))

	      (Corresponds to nf_put_vars_real() in netCDF)

       integer function nfmpi_put_vars_double(integer ncid, integer varid, in‐
	      teger(kind=MPI_OFFSET)	 start(1),    integer(kind=MPI_OFFSET)
	      count(1),	 integer(kind=MPI_OFFSET)  stride(1),  doubleprecision
	      out(1))

	      (Corresponds to nf_put_vars_double() in netCDF)

	      These  functions	are used for strided output, which is like the
	      array section output described above, except that	 the  sampling
	      stride  (the  interval between accessed values) is specified for
	      each dimension.  For an explanation of the sampling stride  vec‐
	      tor, see COMMON ARGUMENTS DESCRIPTIONS below.

       integer function nfmpi_get_vars_text(integer ncid, integer varid, inte‐
	      ger(kind=MPI_OFFSET)     start(1),      integer(kind=MPI_OFFSET)
	      count(1), integer(kind=MPI_OFFSET) stride(1), character*(*) in)

	      (Corresponds to nf_get_vars_text() in netCDF)

       integer function nfmpi_get_vars_int1(integer ncid, integer varid, inte‐
	      ger(kind=MPI_OFFSET)     start(1),      integer(kind=MPI_OFFSET)
	      count(1), integer(kind=MPI_OFFSET) stride(1), integer*1 in(1))

	      (Corresponds to nf_get_vars_int1() in netCDF)

       integer function nfmpi_get_vars_int2(integer ncid, integer varid, inte‐
	      ger(kind=MPI_OFFSET)     start(1),      integer(kind=MPI_OFFSET)
	      count(1), integer(kind=MPI_OFFSET) stride(1), integer*2 in(1))

	      (Corresponds to nf_get_vars_int2() in netCDF)

       integer	function nfmpi_get_vars_int(integer ncid, integer varid, inte‐
	      ger(kind=MPI_OFFSET)     start(1),      integer(kind=MPI_OFFSET)
	      count(1), integer(kind=MPI_OFFSET) stride(1), integer in(1))

	      (Corresponds to nf_get_vars_int() in netCDF)

       integer function nfmpi_get_vars_real(integer ncid, integer varid, inte‐
	      ger(kind=MPI_OFFSET)     start(1),      integer(kind=MPI_OFFSET)
	      count(1), integer(kind=MPI_OFFSET) stride(1), real in(1))

	      (Corresponds to nf_get_vars_real() in netCDF)

       integer function nfmpi_get_vars_double(integer ncid, integer varid, in‐
	      teger(kind=MPI_OFFSET)	start(1),     integer(kind=MPI_OFFSET)
	      count(1),	 integer(kind=MPI_OFFSET)  stride(1),  doubleprecision
	      in(1))

	      (Corresponds to nf_get_vars_double() in netCDF)

	      These functions are used for strided input, which	 is  like  the
	      array  section  input  described above, except that the sampling
	      stride (the interval between accessed values) is	specified  for
	      each  dimension.	For an explanation of the sampling stride vec‐
	      tor, see COMMON ARGUMENTS DESCRIPTIONS below.

WRITING AND READING A MAPPED ARRAY
       integer function nfmpi_put_varm_text(integer ncid, integer varid, inte‐
	      ger(kind=MPI_OFFSET)	start(1),     integer(kind=MPI_OFFSET)
	      count(1),	    integer(kind=MPI_OFFSET)	 stride(1),	 inte‐
	      ger(kind=MPI_OFFSET) imap(1), character*(*) out)

	      (Corresponds to nf_put_varm_text() in netCDF)

       integer function nfmpi_put_varm_int1(integer ncid, integer varid, inte‐
	      ger(kind=MPI_OFFSET)     start(1),      integer(kind=MPI_OFFSET)
	      count(1),	     integer(kind=MPI_OFFSET)	  stride(1),	 inte‐
	      ger(kind=MPI_OFFSET) imap(1), integer*1 out(1))

	      (Corresponds to nf_put_varm_int1() in netCDF)

       integer function nfmpi_put_varm_int2(integer ncid, integer varid, inte‐
	      ger(kind=MPI_OFFSET)	start(1),     integer(kind=MPI_OFFSET)
	      count(1),	    integer(kind=MPI_OFFSET)	 stride(1),	 inte‐
	      ger(kind=MPI_OFFSET) imap(1), integer*2 out(1))

	      (Corresponds to nf_put_varm_int2() in netCDF)

       integer	function nfmpi_put_varm_int(integer ncid, integer varid, inte‐
	      ger(kind=MPI_OFFSET)     start(1),      integer(kind=MPI_OFFSET)
	      count(1),	     integer(kind=MPI_OFFSET)	  stride(1),	 inte‐
	      ger(kind=MPI_OFFSET) imap(1), integer out(1))

	      (Corresponds to nf_put_varm_int() in netCDF)

       integer function nfmpi_put_varm_real(integer ncid, integer varid, inte‐
	      ger(kind=MPI_OFFSET)	start(1),     integer(kind=MPI_OFFSET)
	      count(1),	    integer(kind=MPI_OFFSET)	 stride(1),	 inte‐
	      ger(kind=MPI_OFFSET) imap(1), real out(1))

	      (Corresponds to nf_put_varm_real() in netCDF)

       integer function nfmpi_put_varm_double(integer ncid, integer varid, in‐
	      teger(kind=MPI_OFFSET)	start(1),     integer(kind=MPI_OFFSET)
	      count(1),	     integer(kind=MPI_OFFSET)	  stride(1),	 inte‐
	      ger(kind=MPI_OFFSET) imap(1), doubleprecision out(1))

	      (Corresponds to nf_put_varm_double() in netCDF)

	      These functions are used for mapped output, which is like strid‐
	      ed  output described above, except that an additional index map‐
	      ping vector is provided to specify the in-memory arrangement  of
	      the  data	 values.  For an explanation of the index mapping vec‐
	      tor, see COMMON ARGUMENTS DESCRIPTIONS below.

       integer function nfmpi_get_varm_text(integer ncid, integer varid, inte‐
	      ger(kind=MPI_OFFSET)	start(1),     integer(kind=MPI_OFFSET)
	      count(1),	    integer(kind=MPI_OFFSET)	 stride(1),	 inte‐
	      ger(kind=MPI_OFFSET) imap(1), character*(*) in)

	      (Corresponds to nf_get_varm_text() in netCDF)

       integer function nfmpi_get_varm_int1(integer ncid, integer varid, inte‐
	      ger(kind=MPI_OFFSET)     start(1),      integer(kind=MPI_OFFSET)
	      count(1),	     integer(kind=MPI_OFFSET)	  stride(1),	 inte‐
	      ger(kind=MPI_OFFSET) imap(1), integer*1 in(1))

	      (Corresponds to nf_get_varm_int1() in netCDF)

       integer function nfmpi_get_varm_int2(integer ncid, integer varid, inte‐
	      ger(kind=MPI_OFFSET)	start(1),     integer(kind=MPI_OFFSET)
	      count(1),	    integer(kind=MPI_OFFSET)	 stride(1),	 inte‐
	      ger(kind=MPI_OFFSET) imap(1), integer*2 in(1))

	      (Corresponds to nf_get_varm_int2() in netCDF)

       integer	function nfmpi_get_varm_int(integer ncid, integer varid, inte‐
	      ger(kind=MPI_OFFSET)     start(1),      integer(kind=MPI_OFFSET)
	      count(1),	     integer(kind=MPI_OFFSET)	  stride(1),	 inte‐
	      ger(kind=MPI_OFFSET) imap(1), integer in(1))

	      (Corresponds to nf_get_varm_int() in netCDF)

       integer function nfmpi_get_varm_real(integer ncid, integer varid, inte‐
	      ger(kind=MPI_OFFSET)	start(1),     integer(kind=MPI_OFFSET)
	      count(1),	    integer(kind=MPI_OFFSET)	 stride(1),	 inte‐
	      ger(kind=MPI_OFFSET) imap(1), real in(1))

	      (Corresponds to nf_get_varm_real() in netCDF)

       integer function nfmpi_get_varm_double(integer ncid, integer varid, in‐
	      teger(kind=MPI_OFFSET)	start(1),     integer(kind=MPI_OFFSET)
	      count(1),	     integer(kind=MPI_OFFSET)	  stride(1),	 inte‐
	      ger(kind=MPI_OFFSET) imap(1), doubleprecision in(1))

	      (Corresponds to nf_get_varm_double() in netCDF)

	      These functions are used for mapped input, which is like strided
	      input  described	above, except that an additional index mapping
	      vector is provided to specify the in-memory arrangement  of  the
	      data  values.   For  an explanation of the index mapping vector,
	      see COMMON ARGUMENTS DESCRIPTIONS below.

ATTRIBUTES
       integer function nfmpi_put_att_text(integer ncid, integer varid,	 char‐
	      acter*(*)	 name,	integer	 xtype,	 integer(kind=MPI_OFFSET) len,
	      character*(*) out)

	      (Corresponds to nf_put_att_text() in netCDF)

       integer function nfmpi_put_att_int1(integer ncid, integer varid,	 char‐
	      acter*(*) name, integer xtype, integer(kind=MPI_OFFSET) len, in‐
	      teger*1 out(1))

	      (Corresponds to nf_put_att_int1() in netCDF)

       integer function nfmpi_put_att_int2(integer ncid, integer varid,	 char‐
	      acter*(*) name, integer xtype, integer(kind=MPI_OFFSET) len, in‐
	      teger*2 out(1))

	      (Corresponds to nf_put_att_int2() in netCDF)

       integer function nfmpi_put_att_int(integer ncid, integer varid, charac‐
	      ter*(*) name, integer xtype, integer(kind=MPI_OFFSET) len, inte‐
	      ger out(1))

	      (Corresponds to nf_put_att_int() in netCDF)

       integer function nfmpi_put_att_real(integer ncid, integer varid,	 char‐
	      acter*(*) name, integer xtype, integer(kind=MPI_OFFSET) len, re‐
	      al out(1))

	      (Corresponds to nf_put_att_real() in netCDF)

       integer	function  nfmpi_put_att_double(integer	ncid,  integer	varid,
	      character*(*) name, integer xtype, integer(kind=MPI_OFFSET) len,
	      doubleprecision out(1))

	      (Corresponds to nf_put_att_double() in netCDF)

       integer function nfmpi_put_att(integer  ncid,  integer  varid,  charac‐
	      ter*(*)  name, integer xtype, integer(kind=MPI_OFFSET) len, void
	      * ip)

	      (Corresponds to nf_put_att() in netCDF)

       integer function nfmpi_get_att(integer  ncid,  integer  varid,  charac‐
	      ter*(*) name, void * ip)

	      (Corresponds to nf_get_att() in netCDF)

	      Unlike  variables, attributes do not have separate functions for
	      defining and writing values.  This family of functions defines a
	      new  attribute  with a value or changes the value of an existing
	      attribute.  If the attribute is new, or if the space required to
	      store  the  attribute  value  is greater than before, the netCDF
	      dataset must be in define mode.  The parameter len is the number
	      of  values  from	out to transfer.  It is often one, except that
	      for nfmpi_put_att_text() it will usually be len_trim(out).

	      For these functions, the type component  of  the	function  name
	      refers to the in-memory type of the value, whereas the xtype ar‐
	      gument refers to the external type for storing  the  value.   An
	      NF_ERANGE	 error	results if a conversion between these types is
	      not possible.  In this case the value is	represented  with  the
	      appropriate fill-value for the associated external type.

       integer function nfmpi_inq_attname(integer ncid, integer varid, integer
	      attnum, character*(*) name)

	      (Corresponds to nf_inq_attname() in netCDF)

	      Gets the name of an attribute, given its	variable  ID  and  at‐
	      tribute number.  This function is useful in generic applications
	      that need to get the names of all the attributes associated with
	      a	 variable,  since  attributes are accessed by name rather than
	      number in all other attribute functions.	The number of  an  at‐
	      tribute is more volatile than the name, since it can change when
	      other attributes of the same  variable  are  deleted.   The  at‐
	      tributes	for  each  variable are numbered from 1 (the first at‐
	      tribute) to nvatts, where nvatts is the number of attributes for
	      the variable, as returned from a call to nfmpi_inq_varnatts().

       integer	function  nfmpi_inq_att(integer	 ncid,	integer varid, charac‐
	      ter*(*) name, integer xtype, integer(kind=MPI_OFFSET) len)

	      (Corresponds to nf_inq_att() in netCDF)

       integer function nfmpi_inq_attid(integer ncid, integer  varid,  charac‐
	      ter*(*) name, integer attnum)

	      (Corresponds to nf_inq_attid() in netCDF)

       integer function nfmpi_inq_atttype(integer ncid, integer varid, charac‐
	      ter*(*) name, integer xtype)

	      (Corresponds to nf_inq_atttype() in netCDF)

       integer function nfmpi_inq_attlen(integer ncid, integer varid,  charac‐
	      ter*(*) name, integer(kind=MPI_OFFSET) len)

	      (Corresponds to nf_inq_attlen() in netCDF)

	      These  functions	return	information  about a netCDF attribute,
	      given its variable ID and name.  The information returned is the
	      external	type  in  xtype	 and the number of elements in the at‐
	      tribute as len.

       integer function nfmpi_copy_att(integer ncid, integer varid_in, charac‐
	      ter*(*) name, integer ncid_out, integer varid_out)

	      (Corresponds to nf_copy_att() in netCDF)

	      Copies  an attribute from one netCDF dataset to another.	It can
	      also be used to copy an attribute from one variable  to  another
	      within  the  same	 netCDF.  ncid_in is the netCDF ID of an input
	      netCDF  dataset  from  which  the	 attribute  will  be   copied.
	      varid_in	is  the ID of the variable in the input netCDF dataset
	      from which the attribute will be	copied,	 or  NF_GLOBAL	for  a
	      global  attribute.  name is the name of the attribute in the in‐
	      put netCDF dataset to be copied.	ncid_out is the netCDF	ID  of
	      the output netCDF dataset to which the attribute will be copied.
	      It is permissible for the input and output netCDF ID's to be the
	      same.  The output netCDF dataset should be in define mode if the
	      attribute to be copied does not already  exist  for  the	target
	      variable,	 or  if it would cause an existing target attribute to
	      grow.  varid_out is the ID of the variable in the output	netCDF
	      dataset  to  which the attribute will be copied, or NF_GLOBAL to
	      copy to a global attribute.

       integer function nfmpi_rename_att(integer ncid, integer varid,  charac‐
	      ter*(*) name, character*(*) newname)

	      (Corresponds to nf_rename_att() in netCDF)

	      Changes  the  name  of  an attribute.  If the new name is longer
	      than the original name, the netCDF must be in define mode.   You
	      cannot  rename an attribute to have the same name as another at‐
	      tribute of the same variable.  name is  the  original  attribute
	      name.   newname  is the new name to be assigned to the specified
	      attribute.  If the new name is longer than  the  old  name,  the
	      netCDF dataset must be in define mode.

       integer	function  nfmpi_del_att(integer	 ncid,	integer varid, charac‐
	      ter*(*) name)

	      (Corresponds to nf_del_att() in netCDF)

	      Deletes an attribute from a netCDF dataset.  The dataset must be
	      in define mode.

       integer	function nfmpi_get_att_text(integer ncid, integer varid, char‐
	      acter*(*) name, character*(*) in)

	      (Corresponds to nf_get_att_text() in netCDF)

       integer function nfmpi_get_att_int1(integer ncid, integer varid,	 char‐
	      acter*(*) name, integer*1 in(1))

	      (Corresponds to nf_get_att_int1() in netCDF)

       integer	function nfmpi_get_att_int2(integer ncid, integer varid, char‐
	      acter*(*) name, integer*2 in(1))

	      (Corresponds to nf_get_att_int2() in netCDF)

       integer function nfmpi_get_att_int(integer ncid, integer varid, charac‐
	      ter*(*) name, integer in(1))

	      (Corresponds to nf_get_att_int() in netCDF)

       integer	function nfmpi_get_att_real(integer ncid, integer varid, char‐
	      acter*(*) name, real in(1))

	      (Corresponds to nf_get_att_real() in netCDF)

       integer	function  nfmpi_get_att_double(integer	ncid,  integer	varid,
	      character*(*) name, doubleprecision in(1))

	      (Corresponds to nf_get_att_double() in netCDF)

	      Gets  the	 value(s) of a netCDF attribute, given its variable ID
	      and name.	 Converts from the external type to the type specified
	      in   the	function  name,	 if  possible,	otherwise  returns  an
	      NF_ERANGE error.	All elements of the vector of attribute values
	      are  returned,  so  you must allocate enough space to hold them.
	      If you don't know how much space to reserve, call	 nfmpi_inq_at‐
	      tlen() first to find out the length of the attribute.

COMMON ARGUMENT DESCRIPTIONS
       In  this	 section we define some common arguments which are used in the
       "FUNCTION DESCRIPTIONS" section.

       integer ncid
	      is the netCDF ID returned from a previous,  successful  call  to
	      nfmpi_open() or nfmpi_create()

       character*(*) name
	      is the name of a dimension, variable, or attribute. The names of
	      dimensions, variables and attributes consist  of	arbitrary  se‐
	      quences  of  alphanumeric characters (as well as underscore '_',
	      period '.' and hyphen '-'), beginning with a  letter  or	under‐
	      score.  (However	names  commencing with underscore are reserved
	      for system use.) Case is significant in netCDF  names.  A	 zero-
	      length name is not allowed.

	      The maximum allowable number of characters
	       is NF_MAX_NAME.

       integer xtype
	      specifies	 the  external	data  type of a netCDF variable or at‐
	      tribute and is one of the following: NF_BYTE, NF_CHAR, NF_SHORT,
	      NF_INT, NF_FLOAT, or NF_DOUBLE for CDF-1 and CDF-2 file formats.
	      These are used to specify 8-bit integers, characters, 16-bit in‐
	      tegers, 32-bit integers, 32-bit IEEE floating point numbers, and
	      64-bit IEEE floating-point numbers, respectively.

	      CDF-5 defines additional external	 types:	 NF_UBYTE,  NF_USHORT,
	      NF_UINT, NF_INT64, and NF_UINT64.

       integer dimids(1)
	      is  a vector of dimension ID's and defines the shape of a netCDF
	      variable.	 The size of the vector shall be greater than or equal
	      to  the  rank  (i.e.  the	 number of dimensions) of the variable
	      (ndims).	The vector shall be ordered by the speed with which  a
	      dimension	 varies:  dimids(1)  shall  be the dimension ID of the
	      most rapidly varying dimension and dimids(ndims)	shall  be  the
	      dimension	 ID of the most slowly varying dimension.  The maximum
	      possible number of dimensions for a variable  is	given  by  the
	      symbolic constant NF_MAX_VAR_DIMS.

       integer dimid
	      is  the ID of a netCDF dimension.	 netCDF dimension ID's are al‐
	      located sequentially from the positive integers  beginning  with
	      1.

       integer ndims
	      is  either the total number of dimensions in a netCDF dataset or
	      the rank (i.e. the number of dimensions) of a  netCDF  variable.
	      The  value  shall	 not  be negative or greater than the symbolic
	      constant NF_MAX_VAR_DIMS.

       integer varid
	      is the ID of a netCDF  variable  or  (for	 the  attribute-access
	      functions)  the  symbolic	 constant  NF_GLOBAL, which is used to
	      reference global attributes.  netCDF variable ID's are allocated
	      sequentially from the positive integers beginning with 1.

       integer natts
	      is  the number of global attributes in a netCDF dataset  for the
	      nfmpi_inquire() function or the number of attributes  associated
	      with a netCDF variable for the nfmpi_varinq() function.

       integer(kind=MPI_OFFSET) index(1)
	      specifies	 the   coordinates  of the netCDF data value to be ac‐
	      cessed.  The indices start at 1; thus, for  example,  the	 first
	      data  value of a two-dimensional variable is (1,1).  The size of
	      the vector shall be at least the rank of the  associated	netCDF
	      variable	and  its  elements  shall correspond, in order, to the
	      variable's dimensions.

       integer(kind=MPI_OFFSET) start(1)
	      specifies the starting point for accessing a  netCDF  variable's
	      data  values  in terms of the indicial coordinates of the corner
	      of the array section.  The indices start at 1; thus,  the	 first
	      data  value  of  a  variable is (1, 1, ..., 1).  The size of the
	      vector shall be at least the rank of the associated netCDF vari‐
	      able  and	 its elements shall correspond, in order, to the vari‐
	      able's dimensions.

       integer(kind=MPI_OFFSET) count(1)
	      specifies the number of indices selected along each dimension of
	      the array section.  Thus, to access a single value, for example,
	      specify count as (1, 1, ..., 1).	Note that,  for	 strided  I/O,
	      this  argument must be adjusted to be compatible with the stride
	      and start arguments so that the interaction of  the  three  does
	      not attempt to access an invalid data co-ordinate.  The elements
	      of the count vector correspond, in order, to the variable's  di‐
	      mensions.

       integer(kind=MPI_OFFSET) stride(1)
	      specifies	 the  sampling	interval  along	 each dimension of the
	      netCDF variable.	 The elements of the stride vector correspond,
	      in  order, to the netCDF variable's dimensions (stride(1)) gives
	      the sampling interval along the most rapidly  varying  dimension
	      of  the  netCDF  variable).  Sampling intervals are specified in
	      type-independent units of elements (a value of 1 selects consec‐
	      utive  elements  of  the netCDF variable along the corresponding
	      dimension, a value of 2 selects every other element, etc.).

       integer(kind=MPI_OFFSET) imap(1)
	      specifies the mapping between the dimensions of a	 netCDF	 vari‐
	      able  and	 the  in-memory	 structure of the internal data array.
	      The elements of the index mapping vector correspond,  in	order,
	      to  the netCDF variable's dimensions (imap(1) gives the distance
	      between elements of the internal array corresponding to the most
	      rapidly  varying	dimension  of the netCDF variable).  Distances
	      between elements are specified in type-independent units of ele‐
	      ments  (the distance between internal elements that occupy adja‐
	      cent memory locations is 1 and not the element's byte-length  as
	      in netCDF 2).

VARIABLE PREFILLING
       PnetCDF does not support data filling.

ENVIRONMENT VARIABLES
       PNETCDF_SAFE_MODE
	   Set	to  1  to  enable metadata consistency check. Warning messages
	   will be printed to stdout if any inconsistency is detected.

MAILING-LISTS
       A mailing list is available for discussion of the PnetCDF interface and
       announcements  about  PnetCDF  bugs,  fixes, and enhancements.  To sub‐
       scribe  or   unsubscribe	  to   the   PnetCDF   mailing	 list,	 visit
       https://lists.mcs.anl.gov/mailman/listinfo/parallel-netcdf

SEE ALSO
       ncmpidump(1), ncmpigen(1), ncmpidiff(1), ncmpivalid(1), pnetcdf(3f).

       PnetCDF	User's Guide, published by Northwestern University and Argonne
       National Laboratory.  This document is adopted from the	netCDF	User's
       Guide,  developed at the Unidata Program Center, University Corporation
       for Atmospheric Research, located in Boulder, Colorado.

       PnetCDF	    home       page	  at	   http://cucis.ece.northwest‐
       ern.edu/projects/PnetCDF/.

Printed: 2024-04-29		  2015-06-01			    PNETCDF(3)
[top]

List of man pages available for DragonFly

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net