1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271
|
<!DOCTYPE html>
<!--[if IE 8]><html class="no-js lt-ie9" lang="en" > <![endif]-->
<!--[if gt IE 8]><!--> <html class="no-js" lang="en" > <!--<![endif]-->
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Compatibility with other standards — HARP 1.5 documentation</title>
<link rel="stylesheet" href="../_static/css/theme.css" type="text/css" />
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
<link rel="stylesheet" href="../_static/custom.css" type="text/css" />
<link rel="index" title="Index" href="../genindex.html" />
<link rel="next" title="Collocation result file" href="collocation_result.html" />
<link rel="prev" title="HDF5/netCDF-4" href="hdf5.html" />
<script src="../_static/js/modernizr.min.js"></script>
</head>
<body class="wy-body-for-nav">
<div class="wy-grid-for-nav">
<nav data-toggle="wy-nav-shift" class="wy-nav-side">
<div class="wy-side-scroll">
<div class="wy-side-nav-search">
<a href="../index.html" class="icon icon-home"> HARP
</a>
<div class="version">
1.5
</div>
</div>
<div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="main navigation">
<ul class="current">
<li class="toctree-l1"><a class="reference internal" href="../install.html">Installation</a></li>
<li class="toctree-l1 current"><a class="reference internal" href="index.html">Conventions</a><ul class="current">
<li class="toctree-l2"><a class="reference internal" href="datatypes.html">Data types</a></li>
<li class="toctree-l2"><a class="reference internal" href="dimensions.html">Dimensions</a></li>
<li class="toctree-l2"><a class="reference internal" href="global_attributes.html">Global attributes</a></li>
<li class="toctree-l2"><a class="reference internal" href="variable_attributes.html">Variable attributes</a></li>
<li class="toctree-l2"><a class="reference internal" href="variables.html">Variables</a></li>
<li class="toctree-l2"><a class="reference internal" href="variable_names.html">Variable names</a></li>
<li class="toctree-l2"><a class="reference internal" href="categorical_variables.html">Categorical Variables</a></li>
<li class="toctree-l2"><a class="reference internal" href="datetime.html">Datetime values</a></li>
<li class="toctree-l2"><a class="reference internal" href="filenames.html">File naming</a></li>
<li class="toctree-l2"><a class="reference internal" href="netcdf3.html">netCDF-3</a></li>
<li class="toctree-l2"><a class="reference internal" href="hdf4.html">HDF4</a></li>
<li class="toctree-l2"><a class="reference internal" href="hdf5.html">HDF5/netCDF-4</a></li>
<li class="toctree-l2 current"><a class="current reference internal" href="#">Compatibility with other standards</a><ul>
<li class="toctree-l3"><a class="reference internal" href="#netcdf-cf">netCDF-CF</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="collocation_result.html">Collocation result file</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="../algorithms/index.html">Algorithms</a></li>
<li class="toctree-l1"><a class="reference internal" href="../operations.html">Operations</a></li>
<li class="toctree-l1"><a class="reference internal" href="../ingestions/index.html">Ingestion definitions</a></li>
<li class="toctree-l1"><a class="reference internal" href="../libharp.html">C library</a></li>
<li class="toctree-l1"><a class="reference internal" href="../idl.html">IDL interface</a></li>
<li class="toctree-l1"><a class="reference internal" href="../matlab.html">MATLAB interface</a></li>
<li class="toctree-l1"><a class="reference internal" href="../python.html">Python interface</a></li>
<li class="toctree-l1"><a class="reference internal" href="../tools.html">Command line tools</a></li>
</ul>
</div>
</div>
</nav>
<section data-toggle="wy-nav-shift" class="wy-nav-content-wrap">
<nav class="wy-nav-top" aria-label="top navigation">
<i data-toggle="wy-nav-top" class="fa fa-bars"></i>
<a href="../index.html">HARP</a>
</nav>
<div class="wy-nav-content">
<div class="rst-content">
<div role="navigation" aria-label="breadcrumbs navigation">
<ul class="wy-breadcrumbs">
<li><a href="../index.html">Docs</a> »</li>
<li><a href="index.html">Conventions</a> »</li>
<li>Compatibility with other standards</li>
<li class="wy-breadcrumbs-aside">
</li>
</ul>
<hr/>
</div>
<div role="main" class="document" itemscope="itemscope" itemtype="http://schema.org/Article">
<div itemprop="articleBody">
<div class="section" id="compatibility-with-other-standards">
<h1>Compatibility with other standards</h1>
<p>Although the HARP data format aims to be compatible with (or orthogonal to) other data format standards, this may not
always be fully possible. Below we detail some of the known differences with existing standards.</p>
<div class="section" id="netcdf-cf">
<h2>netCDF-CF</h2>
<p>The HARP data format standard is to a large extent compatible with the netCDF-CF standard. This means that HARP
attributes either use the same definition as used for netCDF-CF or the attributes are not governed by netCDF-CF.
And vice versa, HARP allows (and ignores) attributes that are not HARP specific.</p>
<p>For the naming convention of variables, in HARP these apply to the actual variable names.
This is complementary to the naming convention for variables used in netCDF-CF which is performed by means of the
<code class="docutils literal notranslate"><span class="pre">standard_name</span></code> variable attribute.</p>
<p>There are however a few differences between the conventions used in HARP and netCDF-CF. These are:</p>
<blockquote>
<div><ul class="simple">
<li>In HARP the vertical dimension in a variable always comes after the latitude and longitude dimensions, whereas in
netCDF-CF the recommendation (not a requirement) is to have the vertical dimension before latitude and longitude.</li>
<li>In netCDF-CF a specific type of dimension can be used only once as dimension of a variable.
This is not the case in HARP where a specific dimension may occur more than once.
For instance, HARP allows you to use a <code class="docutils literal notranslate"><span class="pre">{vertical,vertical}</span></code> dimension for a vertical correlation matrix,
whereas in netCDF-CF the second vertical dimension needs to be a differently named dimension.</li>
<li>Axis variables in HARP can generally be considered ‘auxiliary coordinate variables’ (using netCDF-CF terminology)
but rarely strict ‘coordinate variables’. Note that HARP does not require a pre-identification of axis variables;
none of the dimensions have a fixed axis variable associated with them (or require presence of an axis variable);
different variables in a product can function as axis variable for a dimension dynamically, depending on the
operation to be performed.</li>
<li>Due to the way axis variables and dimensions are defined in HARP, HARP products do not meet the netCDF-CF
requirement that any used dimension (with length greater than one) that is latitude, longitude, vertical, or time
needs to have a ‘coordinate variable’ (using same name and single dimension).</li>
<li>HARP axis variables can be 2-dimensional (e.g. <code class="docutils literal notranslate"><span class="pre">{time,axis}</span></code>) to allow for e.g. a different altitude grid per
time sample (where the actual <code class="docutils literal notranslate"><span class="pre">axis</span></code> length can also differ per time and will then contain fill values at the
end to represent shorter lengths). NetCDF-CF supports this as ‘incomplete multidimensional array representation’
of ‘auxiliary coordinate variables’. However, other multi-dimensional ‘auxiliary coordinate variable’ cases in
netCDF-CF generally do not have a HARP axis variable equivalent. For instance, for the 2-dimensional lat/lon
coordinate variables case (using <code class="docutils literal notranslate"><span class="pre">lon(j,i)</span></code> and <code class="docutils literal notranslate"><span class="pre">lat(j,i)</span></code>) the coordinate variables would not be considered
axis variables by HARP.</li>
</ul>
</div></blockquote>
</div>
</div>
</div>
</div>
<footer>
<div class="rst-footer-buttons" role="navigation" aria-label="footer navigation">
<a href="collocation_result.html" class="btn btn-neutral float-right" title="Collocation result file" accesskey="n" rel="next">Next <span class="fa fa-arrow-circle-right"></span></a>
<a href="hdf5.html" class="btn btn-neutral" title="HDF5/netCDF-4" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left"></span> Previous</a>
</div>
<hr/>
<div role="contentinfo">
<p>
© Copyright 2015-2018 S&T, The Netherlands
</p>
</div>
</footer>
</div>
</div>
</section>
</div>
<script type="text/javascript" id="documentation_options" data-url_root="../" src="../_static/documentation_options.js"></script>
<script type="text/javascript" src="../_static/jquery.js"></script>
<script type="text/javascript" src="../_static/underscore.js"></script>
<script type="text/javascript" src="../_static/doctools.js"></script>
<script async="async" type="text/javascript" src="/usr/share/javascript/mathjax/MathJax.js?config=TeX-AMS-MML_HTMLorMML"></script>
<script type="text/javascript" src="../_static/js/theme.js"></script>
<script type="text/javascript">
jQuery(function () {
SphinxRtdTheme.Navigation.enable(true);
});
</script>
</body>
</html>
|