CEDA Conformance Checker

ceda-cc的Python项目详细描述


用法
--

-d<;directory>;检查目录中的所有文件
python ceda cc/c4.py-p<;project>;-f<;file>;检查单个文件。
python ceda cc/c4.py--copy config<;dest dir>;将默认配置目录复制到<;dest dir>;启用自定义。

在日志文件中记录
,然后继续。默认设置是在未识别的异常后停止。
--日志<;单日志>;多日志>;设置日志文件管理选项--请参阅下面的"单日志"和"多日志"。
--blfmode<;mode>;设置批日志文件的模式--请参阅日志文件模式
--flfmode<;模式>;为文件级日志文件设置模式--请参见日志文件模式
--amap读入一些属性映射并使用虚拟替换运行测试,另请参见amap2nco.py


环境变量:


运行后:


日志文件目录可能包含数百个带有错误报告的文件。要获取摘要,请运行:

python summary.py<;log file directory>;

这将生成错误列表、错误发生的次数以及最多两个包含错误的文件。希望对一个或两个文件的检查能够提供足够的信息来跟踪导致错误报告的问题。


这将在"html"目录中创建一组html文件,可通过浏览器查看(输入file://<;浏览器中HTML目录的路径)。


作为包安装:
——


如果安装了"pip",只需执行:
$pip install ceda cc
,或者在下载tarball
$pip install ceda cc-$version.tar.gz


2之后。如果您有setuptools包,则可以从分发目录中执行以下操作:
$python setup.py install

配置。



从python调用:
----
也可以从python脚本调用代码:

失败'
其他:
打印"成功"
打印"DRS字典:",m.cc.drs打印上次检查的文件的DRS—在多文件模式下不有用。

例如
m=c4.main(args=['-p','cordex','-f',datafilepath,'--ld',logfiledirectory])
对位于datafilepath的单个文件运行检查,并将日志写入logfiledirectory

dependencies
----


>库可以使用cdms2、python-netcdf4或scientific模块读取netcdf文件。
默认情况下,如果可用,它将使用cdms2模块。最近增加了对netcdf4和科学模块的支持。
若要更改默认值,请更改"支持的netcdf"中列出模块的顺序文件中的列表是cdat lite包(http://proj.badc.rl.ac.uk/cedaservices/wiki/cdatlite)的一部分。
对于python-netcdf4,请参见http://code.google.com/p/netcdf4 python/
对于科学,请参见http://dirac.cnrs-orleans.fr/plone/software/scientificpython/。注意,搜索引擎混淆了"科学巨蟒"和"科学巨蟒"。scipy包还包含netcdf api,但在2014年4月测试时,它无法从netcdf 4文件读取数据,这里不支持这样做。

output
----


single log(单个文件的默认值):
--找到的错误和通过的检查的日志
--"rec.txt"--单个记录摘要结果。如果未找到错误,则文件的存档目录路径将位于此记录中。

multi-log(多个文件的默认值):
--每个文件的错误单独日志;
--摘要日志,每个文件3条记录;
--"rec.txt"--每个文件的单个记录,如上所述

log文件模式。
有效模式为:"A":追加
"N","NP":新文件,"NP":关闭后保护(模式=444)
"W","WO":写入(如果存在,则覆盖),"wo":关闭后保护(模式=444)

请注意,在多日志模式下生成的日志文件将重用文件名。如果运行时--flfmode设置为'n'、'np'或'wo',则需要更改或清除目标目录。批处理日志文件的名称包括进程启动时的时间,精确到秒,因此一般不会受到重复使用的影响。


gcmmodelname.txt和rcmmodelname.txt词汇表保存在dmi cordex站点:

http://cordex.dmi.dk/joomla/images/cordex/gcmmodelname.txt
http://cordex.dmi.dk/joomla/images/cordex/rcmmodelname.txt

cmor表使用:
"git clone https://github.com/pcmdi/cordex cmor tables"

错误类别。

要使用此模式,需要映射文件。这可以由没有虚拟替换的checker的初始运行生成。将生成名为"amapdraft.txt"的文件。应检查此文件,以确保建议的更改有意义。

典型指令的格式为:
@var=rlus;standard_name=surface_up_longwave_flux_in_air_standard_name=surface_upleveling_longwave_flux_in_air

其含义为:对于变量"rlus",将属性"standard_name"设置为"surface_upleveling_longwave_flux_in_air",其中输入文件具有"surface_uplevel_longwave_flux_in_air"。

"amapdraft.txt"应在以虚拟模式运行之前复制到新位置。如果corect值是唯一的,则此草稿将只包含错误指令。对变量属性的建议更正将使这些属性与变量名一致。如果不一致是因为变量被赋予了错误的名称而产生的,这将夸大问题,而不是解决问题。应检查所有更改。

可以添加其他指令。例如,
@;institute_id=mohc institute_id=mohc
将指示代码在全局属性"institute_id"中将"mohc"替换为"mohc"。

如果使用--amap标志运行,检查器将在进行虚拟替换后测试属性。也就是说,在这个阶段没有对文件进行任何更改,但是测试的结果将被应用,就好像已经进行了更改一样。

c4.py在虚拟模式下运行之后,将生成一个名为"attributeMappingLog.txt"的文件,其中包含对每个文件的每个更改的记录。如果在虚拟模式下运行的结果为正值,则可以使用此文件创建脚本来修改文件,方法是运行"amap2nco.py":

##这将在"nco script.sh"中生成一个NCO命令列表,该列表将应用更改并在"/tmp/batch1_corrected"中创建新文件。

py程序将生成命令来修改跟踪id和创建日期全局属性,同时进行其他更改。"history"属性由nco库修改。

异常
——
异常处理旨在确保分析一个文件时出现的问题不会阻止对其他文件的测试。
将回溯信息写入日志文件。

bugs
——
文件中没有。应用于此库生成的数组的测试将生成错误前导的错误消息。在CMDS2中,没有明确的方法区分库生成的数组和数据文件中存在的数组。解决方案可能是改用netcdf4模块。

----

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
javajexcel包装文本问题   EclipseJavaEnum缩进超过左括号。如何让它看起来更正常?   java有办法包含Tomcat 6 catalina。out和localhost。在网络应用的日志文件中记录内容?   java如何永久性地阻止JavaFX代码在eclipse中被突出显示为错误?   如何在java中优化两个for循环(for循环中的for循环)   java如何在我的windows机器上从jar文件创建mac osx的可执行文件   使用记忆化/动态规划的Java组合学   Java中的游荡对象垃圾收集   java为什么我在JSP和JDBC和MySQL中遇到连接失败错误   java轮询Pod的就绪状态   如何创建电子邮件并将其发送到Java中的特定地址?   java如何修复Dagger 2错误“。。。无法提供[…]”?   java Android单选按钮看起来太轻   Android Studio:开发在应用程序之间共享的通用java库