英语法语西班牙语

OnWorks 网站图标

ncmpigen - 云端在线

通过 Ubuntu Online、Fedora Online、Windows 在线模拟器或 MAC OS 在线模拟器在 OnWorks 免费托管服务提供商中运行 ncmpigen

这是命令 ncmpigen,可以使用我们的多个免费在线工作站之一在 OnWorks 免费托管服务提供商中运行,例如 Ubuntu Online、Fedora Online、Windows 在线模拟器或 MAC OS 在线模拟器

程序:

您的姓名


ncmpigen - 从 CDL 文件生成 netCDF 文件、C 程序或 Fortran 程序

概要


ncmpigen [-b] [-c] [-f] [-n] [-o netcdf_文件名] [-v 文件格式] 输入文件

商品描述


新皮素 生成 netCDF 文件或 C 或 Fortran 源代码以创建 netCDF
文件。 输入到 新皮素 是用已知的小语言对 netCDF 文件的描述
作为 CDL(网络公共数据形式语言),如下所述。 如果没有指定选项
在调用 新皮素, 它只是检查输入 CDL 文件的语法,产生错误
任何违反 CDL 语法的消息。 其他选项可用于创建
对应的 netCDF 文件,生成一个使用 netCDF C 接口的 C 程序
创建 netCDF 文件,或生成使用 netCDF Fortran 的 Fortran 程序
创建相同的 netCDF 文件的界面。

新皮素 可与配套程序一起使用 转储 执行一些简单的
对 netCDF 文件的操作。 例如,要重命名 netCDF 文件中的维度,请使用
转储 要获得 netCDF 文件的 CDL 版本,请编辑 CDL 文件以更改名称
尺寸和使用 新皮素 从编辑的文件中生成相应的 netCDF 文件
CDL 文件。

配置


-b 创建(二进制)netCDF 文件。 如果 -o 选项不存在,默认文件名
将从 netCDF 名称(在 网盘 中的关键字
input) 通过附加“.nc”扩展名。 如果文件已经存在
指定的名称,它将被覆盖。

-c 产生 C 将创建与 netCDF 匹配的 netCDF 文件的源代码
规格。 C 源代码被写入标准输出。

-f 产生 Fortran语言 将创建与 netCDF 匹配的 netCDF 文件的源代码
规格。 Fortran 源代码被写入标准输出。

-o netcdf_文件
创建的二进制 netCDF 文件的名称。 如果指定了此选项,则意味着
该“-b" 选项。(此选项是必需的,因为无法写入 netCDF 文件
直接到标准输出,因为标准输出是不可查找的。)

-n 喜欢 -b 选项,除了创建带有过时“.cdf”扩展名的 netCDF 文件
在没有指定的输出文件名的情况下,而不是“.nc”扩展名
-o 选项。 此选项仅支持向后兼容。

-v 文件格式
输出 netCDF 文件的文件格式。 file_format 的值可以是:1 或
CDF-1 格式的经典。 2 或 64 位偏移是 CDF-2。 5 或 64 位变量
CDF-5。 默认(如果没有给出这个选项)是 CDF-1,经典格式。

示例


检查 CDL 文件的语法 `文件目录':

ncmpigen foo.cdl

从 CDL 文件`文件目录',生成一个等效的二进制 netCDF 文件,名为 `数控系统':

ncmpigen -o x.nc foo.cdl

从 CDL 文件`文件目录', 生成一个包含 netCDF 函数的 C 程序
创建名为 ` 的等效二进制 netCDF 文件所需的调用数控系统':

ncmpigen -c -o x.nc foo.cdl

用法


CDL 句法 总结
下面是一个 CDL 语法示例,描述了一个具有多个命名维度的 netCDF 文件
(纬度、经度和时间)、变量(Z、t、p、rh、纬度、经度、时间)、变量属性(单位、
long_name、valid_range、_FillValue)和一些数据。 CDL 关键字以粗体显示。 (这个
示例旨在说明语法; 一个真正的 CDL 文件会有更完整的
属性集,以便数据更完全地自我描述。)

网盘 foo { // CDL 中的示例 netCDF 规范

尺寸:
纬度 = 10,经度 = 5,时间 = 不限量的 ;

变量:
纬度(纬度),经度(经度),时间(时间);
浮动 Z(时间,纬度,经度),t(时间,纬度,经度);
翻番 p(时间,纬度,经度);
rh(时间,纬度,经度);

// 变量属性
纬度:long_name =“纬度”;
纬度:单位=“度_北”;
lon:long_name = "经度";
lon:units = "degrees_east";
time:units = "自 1992-1-1 00:00:00 以来的秒数";
Z:units = "地势米";
Z:valid_range = 0., 5000.;
p:_FillValue = -9999。;
rh:_FillValue = -1;

data:
纬度 = 0、10、20、30、40、50、60、70、80、90;
lon = -140、-118、-96、-84、-52;
}

所有 CDL 语句都以分号结尾。 可以使用空格、制表符和换行符
自由阅读。 注释可以跟在任何行的字符 `//' 之后。

CDL 描述由三个可选部分组成: 尺寸, 变量data,
以关键字开头 尺寸:, 变量:data, 分别。 变量
部分可能包含 变量 声明属性 任务.

一个网络CDF 尺寸 用于定义一个或多个多维的形状
netCDF 文件中包含的变量。 NetCDF 维度具有名称和大小。 在
netCDF 文件中的大多数一维可以具有 不限量的 大小,这意味着一个变量
使用此维度可以增长到任意长度(如文件中的记录号)。

A 变量 表示相同类型值的多维数组。 一个变量有
名称、数据类型和由其维度列表描述的形状。 每个变量可能
也有关联 属性 (见下文)以及数据值。 名称、数据类型、
变量的形状和形状由它在 变量 CDL 的一部分
描述。 变量可能与维度同名; 按照惯例,这样的
变量是一维的,包含它命名的维度的坐标。
维度不需要有相应的变量。

一个网络CDF 属性 包含有关 netCDF 变量或有关整个 netCDF 的信息
数据集。 属性用于指定诸如单位、特殊值、最大值等属性
和最小有效值、比例因子、偏移量和参数。 属性信息
由单个值或值数组表示。 例如,“units”是一个属性
由字符数组表示,例如“celsius”。 一个属性有一个关联
变量、名称、数据类型、长度和值。 与变量相反
用于数据,属性用于元数据(关于数据的数据)。

在 CDL 中,属性由变量和属性名称指定,以“:”分隔。 它
可以分配 全球化 与 netCDF 的任何变量不相关的属性作为
通过在属性名称前使用“:”来形成一个整体。 CDL 中属性的数据类型是
派生自分配给它的值的类型。 属性的长度是
分配给它的数据值的数量,或字符串中的字符数
分配给它。 通过分隔将多个值分配给非字符属性
带逗号的值。 分配给一个属性的所有值必须是相同的类型。

CDL 维度、变量和属性的名称必须以字母开头
字符或“_”,后续字符可以是字母数字或“_”或“-”。

可选的 data CDL 规范的部分是 netCDF 变量可能所在的位置
初始化。 初始化的语法很简单:变量名、等号、
和一个逗号分隔的常量列表(可能用空格、制表符和换行符分隔)
以分号结尾。 对于多维数组,最后一维不同
最快的。 因此,矩阵使用行顺序而不是列顺序。 如果值较少
提供比填充变量所需的更多,它扩展了一个依赖于类型的
`fill value',可以通过为特定变量提供一个值来覆盖它
名为“_FillValue”的属性。 常量的类型不需要与声明的类型匹配
一个变量; 例如,强制转换用于将整数转换为浮点数。 这
常量‘_’可用于指定变量的填充值。

原始 时间 类型
坦克 字符
字节 8位数据
16 位有符号整数
32 位有符号整数
INT (与 )
浮动 IEEE 单精度浮点数(32 位)
真实 (与 浮动)
翻番 IEEE 双精度浮点(64 位)

除了添加的数据类型 字节 而且缺乏 无符号, CDL 支持同
原始数据类型为 C。原始数据类型的名称是保留字
CDL,因此变量、维度和属性的名称不能是类型名称。 在
声明,类型名称可以用大写或小写指定。

字节与字符的不同之处在于它们旨在保存完整的八位数据,
零字节没有特殊意义,就像它对字符数据一样。 新皮素
转换 字节 声明 坦克 输出 C 代码中的声明和
非标 字节 输出 Fortran 代码中的声明。

Shorts 可以保存 -32768 和 32767 之间的值。 新皮素 转换 声明
输出 C 代码和非标准中的声明 整数*2 声明在
输出 Fortran 代码。

多头可以保存 -2147483648 和 2147483647 之间的值。 新皮素 转换
声明 输出 C 代码中的声明和 INTEGER 声明在
输出 Fortran 代码。 INT整数 被接受为同义词 在 CDL
声明。 既然有 C long 的 64 位表示的平台,它
可能更好地使用 INT 同义词,以免混淆。

浮点数可以保存大约 -3.4+38 和 3.4+38 之间的值。 他们的外部代表是
作为 32 位 IEEE 标准化单精度浮点数。 新皮素 转换
浮动 声明 浮动 输出 C 代码中的声明和 REAL 声明在
输出 Fortran 代码。 真实 被接受为同义词 浮动 在 CDL 声明中。

双打可以保存大约 -1.7+308 和 1.7+308 之间的值。 他们的外部代表
是 64 位 IEEE 标准规范化双精度浮点数。 新皮素
转换 翻番 声明 翻番 输出 C 代码中的声明和 双盒套装
精确 输出 Fortran 代码中的声明。

CDL 常量
分配给属性或变量的常量可以是任何基本的 netCDF 类型。
常量的语法类似于 C 语法,不同的是类型后缀必须是
附加到短裤和花车上,以区别于多头和双打。

A 字节 常量由单个字符或多个字符转义序列表示
用单引号括起来。 例如,
'a' // ASCII 'a'
'\0' // 一个零字节
'\n' // ASCII 换行符
'\33' // ASCII 转义字符(33 八进制)
'\x2b' // ASCII 加(2b 十六进制)
'\377' // 377 八进制 = 255 十进制,非 ASCII

字符常量用双引号括起来。 可以表示一个字符数组
作为用双引号括起来的字符串。 遵循通常的 C 字符串转义约定。
举个例子
"a" // ASCII `a'
"Two\nlines\n" // 一个 10 个字符的字符串,带有两个嵌入的换行符
"a bell:\007" // 一个包含 ASCII 铃声的字符串
请注意,netCDF 字符数组“a”将适合单元素变量,因为没有
假设终止 NULL 字符。 但是,字符数组中的零字节是
解释为有效字符的结尾 转储 程序,如下
C 公约。 因此,字符串中不应嵌入 NULL 字节
除非在最后:使用 字节 数据类型代替包含零的字节数组
字节。 NetCDF 和 CDL 没有字符串类型,只有定长字符数组,
可能是多维的。

整数常量用于表示 16 位有符号量。 表格
常量是一个带有“s”或“S”的整数常量。 如果一个
常量以'0'开头,被解释为八进制,除非它以'0x'开头,
它被解释为一个十六进制常数。 例如:
-2s // 一个短的 -2
0123s // 八进制
0x7ffs //十六进制

整数常量用于表示 32 位有符号量。 表格
常量是一个普通的整数常量,尽管附加一个
可选的“l”或“L”。 如果一个 常量以‘0’开头,被解释为八进制,
除了如果它以‘0x’开头,它被解释为一个十六进制常量。 例子
有效的 常量包括:
-2
1234567890L
0123 //八进制
0x7ff // 十六进制

类型的浮点常量 浮动 适合表示浮点数
数据具有大约七位有效数字的精度。 一种形式 浮动 常数是
与附加了“f”或“F”的 C 浮点常量相同。 例如
以下都是可以接受的 浮动 常数:
-2.0f
3.14159265358979f // 将被截断到较低的精度
xnumx.f

类型的浮点常量 翻番 适合表示浮点数
数据的精度约为 XNUMX 位有效数字。 一种形式 翻番 常数是
与 C 浮点常量相同。 可以附加可选的“d”或“D”。 为了
例如以下都是可以接受的 翻番 常数:
-2.0
3.141592653589793
1.0-20
1.D

日期


$日期:2014-04-16 13:38:34 -0500(16 年 2014 月 XNUMX 日,星期三) $

使用 onworks.net 服务在线使用 ncmpigen


免费服务器和工作站

下载 Windows 和 Linux 应用程序

  • 1
    认证通行证
    认证通行证
    AuthPass 是一个开源密码
    经理支持流行和
    经过验证的 Keepass(kdbx 3.x 和 kdbx 4.x ...
    下载授权通行证
  • 2
    ZABBIX
    ZABBIX
    Zabbix 是企业级开放
    源分布式监控解决方案
    旨在监控和跟踪
    网络的性能和可用性
    服务器、设备...
    下载 Zabbix
  • 3
    KDiff3
    KDiff3
    此存储库不再维护
    并用于存档目的。 看
    https://invent.kde.org/sdk/kdiff3 for
    最新的代码和
    https://download.kde.o...
    下载 KDiff3
  • 4
    USB加载器GX
    USB加载器GX
    USBLoaderGX 是一个 GUI
    Waninkoko 的 USB Loader,基于
    libwiigui。 它允许上市和
    推出 Wii 游戏、Gamecube 游戏和
    Wii 和 WiiU 上的自制软件...
    下载 USBLoaderGX
  • 5
    火鸟
    火鸟
    Firebird RDBMS 提供 ANSI SQL 特性
    & 在 Linux、Windows 上运行 &
    几个 Unix 平台。 特征
    出色的并发性和性能
    & 力量...
    下载火鸟
  • 6
    KompoZer首
    KompoZer首
    KompoZer 是一个所见即所得的 HTML 编辑器,使用
    Mozilla Composer 代码库。 作为
    Nvu 的开发已停止
    2005 年,KompoZer 修复了许多错误和
    增加了一个...
    下载 KompoZer
  • 更多 ”

Linux 命令

Ad