zoukankan      html  css  js  c++  java
  • NetCDF 格式化数据概述

    前言

      马上要开始新的项目了。气象局方面要求处理的数据是 NetCDF 格式的,这是一种封装好了的数据结构,需要连接一些库,调用特定的 API 进行操作。

      可这方面我知之甚少,遂利用周日上午的时间学习这种数据结构的存取方法,为后续的项目研发打基础。

    NetCDF 概述

      NetCDF全称是 Network Common Data Format,即网络通用数据格式。这种数据格式的文件在气象领域被非常普遍的用到,现在也推广到了很多其他的领域。

      从数学关系上看,NetCDF 数据结构中存储的数据具有多对一的函数关系,"多"是指维,"一"是指变量值。 

      很显然,这种数据结构的最大特点就是能够方便地使用多维矩阵。

    NetCDF 文件的内容

      1. 变量(Variables)

        就是物理数据。比如要存储一个台风风场,那么"东经x度 北维y度 风速z米/秒"就是一个变量。

        需要注意的是,这个变量是广义的变量,它还包含了自变量x和y,从数学函数的角度来说,在这里一个变量的本质其实是一条具体的函数对应关系。

        提到变量一词的时候,有时亦指所有变量的集合。

      2. 维(dimension)

        一个维对应着变量中自变量的取值范围,也就是 1 中所说的经纬度的范围。

      3. 属性(Attribute)

        变量和维在 NetCDF 中只是无量纲的数字,因此必须采用某种方式来让人们明白这些数字的含义,属性在这里就派上用场了。

        如果你已经定义了一个名为temperature的变量,那么下面这行代码:

        temperature:units = "celsius"

        的含义是temperature变量的物理单位是celsius。

        另外,除了物理单位,一个变量还有很多属性可以进行设置,因此能够全面的存储数据。

      下面以代码的形式描述 NetCDF 格式数据 :

    1 NetCDF name{
    2     Dimensions:… //定义维数
    3     Variables:…  //定义变量
    4     Attributes:… //属性
    5     Data:…    //数据
    6 }
  • 相关阅读:
    Oracle关于快速缓存区应用原理
    Caused by: java.lang.ClassNotFoundException: org.apache.commons.fileupload.RequestContext
    速记const 指针与指向const的指针
    bzoj3992【SDOI2015】序列统计
    ubuntu 1204 安装mysql
    解决getOutputStream() has already been called for this response
    把一个project相关的jar放到project的lib文件夹中
    解决eclipse偶尔无视breakpoint的行为
    解决eclipse无法打开:Failed to load the JNI shared library
    挣值管理公式集合
  • 原文地址:https://www.cnblogs.com/scut-fm/p/3970730.html
Copyright © 2011-2022 走看看