## INDEX

- module NumRu::NetCDF_Conventions
- module NumRu::NetCDF_Convention_Users_Guide
  - module NumRu::NetCDF_Convention_Users_Guide::Attribute_Mixin
  - module NumRu::NetCDF_Convention_Users_Guide::VArray_Mixin
- module NumRu::NetCDF_Convention_Wind_Profiler

# module NumRu::NetCDF_Conventions

NetCDF_Conventions is the general handler of NetCDF conventions for the GPhys library.

## Module Functions

#### `find( netcdf )`

  Figures out what NetCDF convention a netcdf file is following.

  ARGUMENTS

  - netcdf (NetCDF): the file

  RETURN VALUE

  - a Module (NumRu::NetCDF_Convention_Users_Guide etc.)

  REMARK

  - The convention is figured out from the 'Conventions' global attribute. You can instead fix the convention by using fix_to.

#### `fix_to( convention )`

  Fix the convention to be returned by find regardless the value of the 'Conventions' attribute.

  ARGUMENTS

  - convention (Module): NumRu::NetCDF_Convention_Users_Guide etc.

  RETURN VALUE

  - convention

#### `add_history(netcdf, str=nil)`

  Adds a line to the 'history' global convention of netcdf. The line consists of date, time, user name, and str if present (e.g., '2004-03-02 17:52:25 JST horinout> '+str).

  ARGUMENTS

  - netcdf (NetCDF): the file in which the history is updated
  - str (nil or String): if present, added to the end of the line.

# module NumRu::NetCDF_Convention_Users_Guide

The NetCDF Users Guide Convention (http://www.unidata.ucar.edu/packages/netcdf/docs.html).

## Constants

#### `Attribute_Mixin`

See below: module NumRu::NetCDF_Convention_Users_Guide::Attribute_Mixin.

#### `VArray_Mixin`

See below: module NumRu::NetCDF_Convention_Users_Guide::VArray_Mixin.

## Module Functions

#### `to_s`

  Returns a string to be used as representing the convention. The Users Guide Convention does not have one, so a string was tentatively assigned by Horinouchi.

#### `coord_var_names(ncvar)`

  Returns the names of coordinate variables for all the dimensions of ncvar.

  ARGUMENTS

  - ncvar (NetCDFVar)

  RETURN VALUE

  - Array of strings, whose length is the rank of ncvar.

#### `cell_bounds?(coord_var)`

  Document to be written. (returns false&nil in this convention.) Might be reorganized in future when the gtool4 convention is supported.

#### `cell_center?(coord_var)`

  Document to be written. (returns false&nil in this convention.) Might be reorganized in future when the gtool4 convention is supported.

--------------------------------------------------

## module NumRu::NetCDF_Convention_Users_Guide::Attribute_Mixin

The module to be mixed in NumRu::AttributeNetCDF.

### Instance Methods

Methods below will become sigular methods of NumRu::AttributeNetCDF.

#### `copy(to=nil)`

  Same as super (the one overridden by this method), but edits some standard attributes if to is nil (copy onto memory)):
  - scale_factor, add_offset: removed, since data copying includes "unpaking" by interpreting them
  - valid_*, missing_value: unpacked if packed.
  - _FillValue, FORTRAN_format, C_format: eliminated

---------------------------------------------------

## module NumRu::NetCDF_Convention_Users_Guide::VArray_Mixin

The module to be mixed in NumRu::VArrayNetCDF.

### Instance Methods

Currently none, meaning is that no modification is made in VArrayNetCDF.

---------------------------------------------------------------------

# module NumRu::NetCDF_Convention_Wind_Profiler

The Wind Profiler convention (http://www.kurasc.kyoto-u.ac.jp/radar-group/wind_profiler_conventions/).

Inherits NetCDF_Convention_Users_Guide and makes appropriate redefinitions. See module NumRu::NetCDF_Convention_Users_Guide for the description of constants and module functions.