门户首页 >关于我们
CDF
名称 Common Data Format (CDF)
维护的组织机构 Space Physics Data Facility,NASA/Goddard Space Flight Center
简介

CDF是一种自描述型数据,用于在学科和数据平台中存储、操作和访问多维数据集。CDF格式已被百余个政府机构、大学、私人和商业组织以及各国研究人员使用,如被International Solar-Terrestrial Physics (ISTP)项目以及Central Data Handling Facilities(CDHF)采用,作为其优先选择的存储和分发关键参数数据格式,也是国内空间物理领域的科研项目如SMILE卫星工程、子午工程常用的数据存储格式之一。

CDF的基本组成部分是一个软件编程接口,该接口用于在独立设备上查看CDF数据模型。它提供CDF library(数据管理包)允许应用程序管理数据数组,支持通过API透明访问数据和元数据,支持对数据压缩、自动解压缩和校验,支持大文件(大于2G),提供了支持C,FORTRAN,Java,Perl,C#/ Visual Basic,IDL,MATLAB等多语言的读写接口。 此外CDF library还包括了很多支持用户操作CDF文件的软件工具。

官方网站 https://cdf.gsfc.nasa.gov/
最新版本 CDF Version 3.8.0.0 https://cdf.gsfc.nasa.gov/html/cdf.html 2020年6月1日更新
参考文档

用户指南 https://spdf.gsfc.nasa.gov/pub/software/cdf/doc/cdf380/cdf380ug.pdf

CDF框架结构编辑器 https://spdf.gsfc.nasa.gov/skteditor/

C、Fortan、Perl、C#等多种语言的参考手册,和java APIs等(https://cdf.gsfc.nasa.gov/html/cdf_docs.html)。

支持的软件工具

数据格式转换工具(https://cdf.gsfc.nasa.gov/html/dttools.html):

  • 与netCDF、Fits、ASCII、CDF Skeleton table、CDFML、PDS 等10余种格式进行转换的工具。

CDF toolkit(https://cdf.gsfc.nasa.gov/html/sw_and_docs.html):

  • CDFcompare该程序用于比较和显示两个CDF文件之间的差异。它有很多选项可以指定选择
  • CDFconvert该程序用于转换CDF的各种属性。
  • CDFdir该程序用于显示CDF的目录列表。
  • CDFedit该程序提供一个全屏的界面允许显示和修改CDF 所有内容通过
  • CDFexport该程序用来导出CDF的全部内容或一部分
  • CDFinquire该程序显示CDF发行版本
  • CDFmerge该程序将两个或多个CDF文件合并为一个CDF。
  • CDFstats该程序生成关于CDF变量的统计报告
  • SkeletonTable此程序用于创建指定CDF框架的ASCII文本文件,它可以读取CDF文件,并将相关信息写入框架表。
  • SkeletonCDF此程序用于制作结构完整的CDF,通过读取称为框架表的文本文件来实现指定框架CDF。
  • CDFValidate此程序验证有效CDF文件的有效性和完整性。
  • CDFDump该程序用于以可读的方式转储数据内容CDF的表格。
  • CDFIRsDump这是一个诊断工具,用于转储内部CDF的数据记录(以十六进制表示)。用于显示内部文件的数据结构的诊断工具。
  • CDFLeapSecondsInfo用于显示如何从外部或内部访问基于CDF的Leap Second 表

支持CDF的商用和公共软件工具 :

用户开发的软件 (https://cdf.gsfc.nasa.gov/html/user_supplied_sw.html

  • maser4py 应用程序:用于CDF电子表格描述(spreadsheet description)及其框架之间转换。
  • QSAS 空间等离子体科学分析软件:它为空间物理数据的选择,操作和显示提供了灵活,可扩展的环境。QSAS用C / C ++编写,使用gnu compiler set进行编译,并利用了第三方软件的多个元素,包括 Qt, CDF和 PLplot。当前可用于Linux,Mac OSX和Windows。
  • JCDF:java包,提供了读取CDF文件方式。 使用这种方式读取CDF文件是无需再安装CDF library。
  • Cdfj:另一个基于java的纯软件包,提供了CDF文件读写访问方式,无需再安装CDF library。
  • Pure Python-to-CDF:Python 3程序包,用于Python转换CDF。
  • SpacePy:该软件包提供了用于许多NASA任务的通用数据格式(CDF)库的Python接口,它针对Python 2.6+,并且在Python 2或Python 3上都可以正常运行。
  • Sybase-to-CDF Perl 脚本:使用Perl DBI和CDF Perl模块将Sybase数据库中的数据提取为CDF格式
  • Speedups for reading CDF files in MATLAB:该补丁可一次读取所有CDF记录,并且比原始MATLAB的CDFREAD函数要快得多。
  • MySQL-to-CDF Perl脚本:枚举给定关系中的所有属性,创建相应的CDF结构,并将MySQL数据转储到CDF文件中。
样例 https://cdaweb.gsfc.nasa.gov/pub/software/cdf/cdf_test_files/