实时资料使用说明 1) 格点资料(GRIB格式) 数据内容:采用NCEP的实时格点资料,(1.0X1.0或2.5X2.5)网格,4月16日前的数据为16层,4月16日以后的数据为26层,主要的变量包括:TMP、HGT、UGRD、VGRD、RH、VVEL等。 文件名的组织方法 文件以gribyyyymmddhh格式来存放,其中yyyy为4位的年,mm为2位的月,dd为2位的日期,hh为2位的时次。wgrib.big目录用来存放(1.0X1.0)网格数据,wgrib目录用来存放(2.5X2.5)网格数据 2)台站资料(BUFR格式) 数据内容:包括全球的地面,高空,卫星观测报 文件的组织方法 文件以bufryyyymmddhh格式来存放,其中yyyy为4位的年,mm为2位的月,dd为2位的日期,hh为2位的时次。 wbufr目录用来存放台站数据 解码方法 A wgrib的使用(见附录) B 主页上的调用方法 联到 http://subnic1.iap.ac.cn:8888 ,利用填写选单的办法传取数据。 C 定制 对于特殊要求的用户或要大量解码的数据可以向信息中心说明所需的数据内容,由信息中心帮助进行解码。 D ebufr的使用(见附录) 附录 解码的参考文件和例子 wgrib v1.6.0 Wesley Ebisuzaki Portable Grib decoder "Wgrib" is a portable program to read grib files that were created by the NCEP/NCAR Reanalysis Project. Of course, the program is not restricted to Reanalysis files but Eugenia Kalnay is happy whenever she sees the phrase "NCEP/NCAR Reanalysis". The documentation for wgrib is spread over several files, readme, readme.dos, formats.txt, grib2ieee.txt, notice, porting.txt, tricks.wgrib and usertables.txt and changes. Running wgrib without any arguments displays a short help message. Portable Grib decoder for NCEP Operations etc. it slices, dices v1.6.0 prelim 2 (7-01-97) Wesley Ebisuzaki usage: ./wgrib Inventory/diagnostic output selection -s/-v/-V short inventory/verbose inventory/very verbose non-inventory (default) regular inventory Options for inventory/diagnostic output -PDS/-PDS10/-GDS/-GDS10 print PDS/GDS in hex/dec -verf print forecast verification time -4yr/-ncep_opn/-ncep_rean see documentation Decoding Grib selection -d dump record number -p dump record at byte position -i dump controlled by stdin (inventory list) (none) no decode .. inventory only Options for decoding Grib -text/-ieee/-bin/-grib dump to a text/ieee/bin/grib file -h/-nh dump will have headers (default)/no headers -H dump will include PDS and GDS (-bin/-ieee only) -append append to dump file -o output file name, 'dump' is default *** Standard Inventory *** WGRIB's first duty is create an inventory. This inventory also serves as an index file. Using the test file land.grb you should be able to enter: % wgrib land.grb Using NCEP reanalysis table, see -ncep_opn, -ncep_rean options 1:0:d=87010100:LAND:kpds5=81:kpds6=1:kpds7=0:TR=0:P1=0:P2=0:TimeU=1:sfc:anl:NAve=1 The first line indicates that wgrib couldn't figure out whether to use the reanalysis or operational grib tables. Since land.grb is from reanalysis, we should use the reanalysis tables. Trying again, we get % wgrib land.grb -ncep_rean 1:0:d=87010100:LAND:kpds5=81:kpds6=1:kpds7=0:TR=0:P1=0:P2=0:TimeU=1:sfc:anl:NAve=1 The inventory consists of several fields separated by colons. The contents of the fields are: 1. Record number 2. Position in bytes 3. Date (YYMMDDHH). 4. Parameter name (LAND=land/sea mask) 5. Indicator of parameter and units (grib PDS octet 9) 6. Type of level/layer (grib PDS octet 10) 7. Height, pressure, etc (grib PDS octets 11-12) 8. Time Range (grib PDS octet 21) 9. Period of time 1, (grib PDS octet 19) 10. Period of time 2, (grib PDS octet 20) 11. Forecast time unit (grib PDS octet 18) 12. level 13. anl=analysis, fcst=forecast 14. NAve (number of grids used to make average) *** Short Inventory *** The short inventory can be obtained using the -s option. This inventory is easier to read the the previous inventory and can also be used as an index file. %wgrib -s land.grb -ncep_rean 1:0:d=87010100:LAND:sfc:anl:NAve=1 1. Record number 2. Position in bytes 3. Date (YYMMDDHH). 4. Parameter name (LAND=land/sea mask) 6. Type of level/layer (grib PDS octet 10) 7. Forecasts, analysis, etc 8. For an average, the number of fields averaged together *** Verbose Inventory *** The small verbose inventory can be obtained using the -v option. This inventory can be used as an index file. % wgrib -v land.grb -ncep_rean 1:0:D=1987010100:LAND:kpds=81,1,0:sfc:anl:"Land-sea mask 1. Record number 2. Position in bytes 3. Date (YYYYMMDDHH). 4. Parameter name (LAND=land/sea mask) 5. KPDS5, KPDS6, KDPS7 (PDS Octets 9, 10, 11-12) 6. Type of level/layer (grib PDS octet 10) 7. Forecasts, analysis, etc 8. Description of parameter type *** Verbose Description *** The fourth type of file description can not be used as an index file. However, it is more human readable. It gives you information that is not normally available such as grid dimensions. Using the test file land.grb, you should be able to enter: %wgrib land.grb -V -ncep_rean rec 1:0:date 1987010100 LAND kpds5=81 kpds6=1 kpds7=0 levels=(0,0) grid=255 sfc anl: LAND=Land-sea mask timerange 0 P1 0 P2 0 TimeU 1 nx 192 ny 94 GDS grid 4 num_in_ave 1 missing 0 center 7 subcenter 0 process 80 Table 2 gaussian: lat 88.542000 to -88.542000 long 0.000000 to -1.875000 by 1.875000, (192 x 94) scan 0 bdsgrid 1 min/max data 0 1 num bits 4 BDS_Ref 0 DecScale 1 BinScale 0 The first line states the record 1 starts at byte position 0 the initial date is January 1, 1987 at 00Z the parameter is "LAND" (numeric code 81, PDS octet 9) with a level type 1 (kdps6=1, PDS octet 10) and value 0 (PDS octets 11-12) or levels(0,0) (PDS octet 11, PDS octet 12) with a user defined grid (grid=255) and it is a surface analysis The second line is a further description of the parameter type The third line describes timerange (PDS octet 21) P1 (PDS octet 19) P2 (PDS octet 20) TimeU (PDS octet 14) nx ny grid size as used by wgrib GDS grid (GDS octet 6) num_in_ave (PDS octet 22-23) number missing from average (PDS octet 24) The fourth line describes center (PDS octet 5) subcenter (PDS octet 26) process (PDS octet 6) parameter table version (PDS octet 4) The fifth and sixth lines describe the grid type The last line describes minimum and maximum values of the data the number of bits used to store the data the minimum value the decimal and binary scaling used Most of the information within this description will only make sense if you have a copy of the GRIB definition as reference. If you want to determine the contents of record N, try the command: %wgrib land.grib -V -d N This command also writes a binary dump of the record but it's quick. If you don't want a binary dump, try (on a UNIX machine), %wgrib land.grib -V -d N -o /dev/null *** Extracting Data *** The second major function of wgrib is to extract data from a grib file. The output can be binary, IEEE (big endian), grib and text. All output formats except grib can be written with or without a header. See FORMATS.TXT for more information. The '-append' option appends the extracted data and the '-o ' allows you to set the default output file which is normally "dump". Note: binary format with a header is often compatible with fortran code. Note: IEEE output is "big-endian". Note: writing in binary is faster than writing ieee. Note: using a binary format is faster, more precise and uses less disk space than the text format. Note: The standard NCEP convention is that the arrays are stored in fortran order starting from the north and 0E. The following data goes south and eastward. *** How to select data to be extracted *** 1) by record number wgrib land.grib -d 1 (extract first record) 2) by position wgrib land.grib -p 0 ( extract record starting at byte 0) 3) by (machine readable) inventory (UNIX/AMIGA/MS-DOS) wgrib land.grb | wgrib -i land.grb -o output.bin The third method is the most powerful one. Suppose you have a grib file with many different fields. You want to extract all the zonal winds (UGRD in NCEP files), you could type at a Unix machine: wgrib grib_file | grep ":UGRD:" | wgrib grib_file -i Suppose you want to extract the 500 mb U winds, then you could type at a Unix machine: wgrib grib_file -s | grep ":UGRD:" | grep ":500 mb:" | wgrib -i grib_file For more information on how to write ieee, binary, text and grib files see the file FORMATS.TXT. *** Some Output Formats *** Binary with a f77-style header Suppose you wish to convert all the 500 mb heights (HGT in NCEP files) to binary with a header. The following line would convert "infile" to "outfile". % wgrib -s infile | grep ":HGT:500 mb:" | wgrib -i infile -o outfile The "outfile" is often compatible with the fortran compiler. Binary with no header Suppose you wish to convert all the 500 mb heights (HGT) to binary with a NO header. The following line would convert "infile" to "outfile". % wgrib -s infile | grep ":HGT:500 mb:" | wgrib -i -nh infile -o outfile The "outfile" is often compatible with fortran direct-access I/O. Text Converting a grib file into a text file is slow (reading and writing), takes up much more disk space and can have less precision. Nevertheless it has its uses. % wgrib -s infile | grep ":HGT:500 mb:" | wgrib -i -text infile -o outfile IEEE Most workstations computers use big-endian IEEE as their binary format.For these machines, one should not use the -ieee option as it is slower and could lose some precision. However, the following line will create a big-endian IEEE with f77-style headers. % wgrib -s infile | grep ":HGT:500 mb:" | wgrib -i -ieee infile -o outfile Without headers, one would use % wgrib -s infile | grep ":HGT:500 mb:" | wgrib -i -nh -ieee infile -o outfile GRIB Suppose you have a large file with every variable imaginable. But you are a simple person with limited means. You only want the 500 mb heights and you have limited disk space. The following will extract the 500 mb heights as a grib file. % wgrib -s infile | grep ":HGT:500 mb:" | wgrib -i -grib infile -o outfile
什么是语义网格? Martin C Brown ( questions@mcslp.com ), 自由作家兼顾问, MCslp Martin Brown 成为一名职业作家已经超过 8 年的时间了。他撰写了很多涉及各个主题的书籍和文章。他的专业知识涉及各种开发语言和平台(比如 Perl、Python、Java、JavaScript、Basic、Pascal、Modula-2、C、C++、Rebol、Gawk、Shellscript、Windows、Solaris、Linux、BeOS、Mac OS/X 等),以及 Web 编程、系统管理和集成。Martin 会定期在 ServerWatch.com、LinuxToday.com 和 IBM developerWorks 上发表文章,定期更新 Computerworld、Apple Blog 以及其他站点上的 blog,同时还是 Microsoft 的 Subject Matter Expert(SME)的专栏作家。您可以通过他的 Web 站点 http://www.mcslp.com 与他联系。 简介: 语义网格使用元数据来描述网格中的信息。将信息转化为一些更有意义的东西,而不只是一个数据集合,这意味着要正确理解数据的内容、格式和重要性。语义 Web 就遵循这种模型,即提供其他一些元数据来帮助描述在 Web 页面上显示的信息,这样浏览器、应用程序和用户就能够更好地决定如何处理数据。语义网格对于在网格环境中使用的信息也适用类似的准测。在本文中,我们将详细介绍什么是语义网格,如何使用语义网格,以及语义网格对于将来的网格应用程序意味着什么。 发布日期: 2005 年 10 月 24 日 理解信息 作为人类,我们具有不可思议的能力,可以识别并利用各种信息,并能够理解如何利用这些信息来满足我们的需求。如果我们不考虑人体的感观基础,对于有很多数据类型,例如我们看到的东西(视频),听到的东西(音频),阅读到的东西(文字),大脑都可以很容易进行转换、翻译、处理、合并和重用。 更为复杂的是,我们可以阅读、观察或倾听消息,并且可以以不可思议的正确率来识别这些信息的内容和主题,结果足以从类似的信息中识别和筛选出来。 例如,在我们复述所看到或听到的内容时,没有人会多次回顾这些内容。类似地,我们可以对很多源头的信息(视频、音频、文字)进行合并,而且可以用任何一种格式对这些信息进行归纳总结。 但是对于一台计算机来说,这个过程要更为复杂。例如,对于一个 Web 页面上文字内容的理解就非常复杂。即使使用基本的文本分析技术,也不足以识别正确的主题。部分问题是由于我们所使用的语言中的一些奇特行为。例如,在英语中有些单词有多种含义,即使复杂的技术单词也是如此。就拿术语 services 来说吧,它就有多个含义,即便仅仅在 IT 和计算领域也是如此。 问题是在我们使用计算机来存储、维护越来越多的信息并与之进行交互时,计算机要有效地组织和利用这些信息就变得非常困难。对于资源和信息的搜索和查找都是非常有挑战性的任务。正如随着计算机更加自治(Google 就是一个很好的例子,它会自行更新资源),我们有效查找和利用这些信息的能力还必须提高。 回页首 语义 Web 当然,Google 会对 Web 页面上的单词进行索引,以搜索页面上的信息。然而,通过 Google 进行索引和搜索的信息的内容还非常少。例如,如果您搜索 services ,就需要再给搜索单词加上一些额外的约束来帮助 Google 判断您所想搜索的是哪种服务(参见图 1)。然而,即使使用这些信息,Google 仍然只能挑选出那些包含这个约束的页面。要找到想要寻找的内容,您可能还需要在搜索时所使用的单词组合中指定更好的约束。 图 1. 在 Google 上搜索“services” 目前 Web 页面的缺点大部分是由于它们是使用超文本标记语言(HTML)编写的,这种语言主要用来对文本进行格式化处理,而不是识别和标记内容。HTML 标准已经进行了一些扩展( meta 标签),可以向页面中添加更多其他信息,但是这大部分都是多余的,它们用来将整个页面作为一个整体进行标记,而不是对给定页面的各部分内容进行说明。 HTML 的另外一个目标是让页面提供到其他页面和信息源的链接。然而,与页面本身的文字内容一样,这些链接也没有提供任何超出对链接进行描述的语言之外的任何内容。 语义 Web 的目标就是来解决这些问题,它采用其他一些技术来帮助对页面中包含的机器可读和可理解的人类信息进行分类和组织,应用程序可以利用这些信息来帮助对信息进行分类和组织。 XML 是这个步骤中的一个关键部分,这并不奇怪,就像是您之前听过的其他技术一样。关键部分如下: XML 用来定义文档的结构,还(使用 RDF)用来帮助描述该文档的其他元数据。然而需要注意,使用 XML 并不一定意味着这些文档都必须是使用 XML 编写的,并一定要转换成 XHTML,而只是说 XML 是用来简化信息格式化及共享的一个关键的基本标准。 资源描述框架(RDF) 是一个用来描述关于对象和引用的元数据的工具。RDF 是用来分发现有情况中的元数据的一种普遍认可的格式。例如,RDF 是企业联合组织用来分发有关 Web 页面中所包含内容的描述信息所采用的格式之一。 Web Ontology Language(OWL) 是一种根据 RDF 准则来描述有关给定资源的本体数据的标记语言。本体数据是对特定主题领域中的内容的一种结构化描述。OWL 不但提供了结构化的内容信息,而且提供了一些方法来描述论题与主题之间的联系,以及主题之间的联系(例如,一个主题是否是一个大型论题的一个子类,它们之间是否存在直接或间接的关系)。基本的规则与学校中常教的经典动物、蔬菜、矿石和分类系统类似。例如,使用本体,您就可以定义只吃蔬菜的食草动物(素食者)、只吃其他动物的食肉动物和什么都吃的杂食动物。RDF 和 OWL 分类的例子请参阅 参考资料 。 这三种技术一起用来帮助提供有关给定资源和这些资源所链接到的地方的语义信息(参见图 2)。资源是使用统一资源标识符(URI)进行定义的;RDF 和 OWL 数据可以被链接到 URI 上,这些 URI 不但对内容进行了描述,而且还描述了这些内容之间的关系,以及它们与其他 URI 和内容类型之间的关系。 图 2. 语义文档结构 由于关于 URI 的信息都是按照结构化的格式存储的,因此就可以由计算机进行分析和处理,从而确定链接以及与其他 URI 之间的关系。例如,通过分析,您就可以通过比较 RDF 与 OWL 资源中的信息来判断两个 Web 页面是否包含类似的主题。 在搜索上下文中(例如,Google 中),可以显式地声明您正在查找的信息类型,而不用依赖于包含所指定的单词的页面。例如,您可能会查找 cleaning services,但是返回的页面中可能根本就不包括这两个单词。 回页首 语义网格 将语义 Web 应用于网格环境,就形成了语义网格。语义网格小组对语义网格进行了定义,我无法给出更好的定义,就直接引用他们的定义好了:语义网格就是“对当前网格的一个扩展,其中对信息和服务进行了很好的定义,可以更好地让计算机和人们协同工作”。 实际上,语义网格通常都被看作是这样一种结果:将网格和语义 Web 技术组合在一起,以便提高集成和数据计算的能力,如图 3 所示。 图 3. 提高集成和数据计算能力图示 语义网格实际上有两种用途:用来发现处理数据的可用资源,以及对数据进行集成。让我们来快速了解一下它们会对语义网格的实现都有些什么影响。 发现和重用 语义网格的发现端设计用来使得网格在 Internet 上更容易被发现。这需要对用户和应用程序所需要的能力详细进行定义,才能使它们更好地查找并利用网格。这可以帮助网格用户重用现有的资源和技术来满足自己对网格的需求,而不用构建新网格和应用程序来处理新数据。 例如,一个为科学社区提供计算资源的网格可以由大量的用户和组织使用。这不用为网格环境开发一个单用户的应用程序,其他人都可以使用现有的网格基础设施和网格应用程序。 复杂性在于如何描述网格服务和网格的处理能力。这是语义网格的特点所在,加上对能力和功能的详细分类和描述,使得判断特定网格可以提供哪些功能更加容易。 数据集成 与 Web 和语义 Web 中的信息一样,语义网格的另外一种强大之处在于对网格中存储和可以使用的信息进行关联和协调使用的能力。 对于资源网格来说(这种网格共享的是磁盘和存储空间,而不是提供 CPU 处理能力),这个问题就是有多少人可以看到 Web 正在服务,使用网格技术(Web 服务,安全性等等)在信息之间提供关联和连通性可以为存储和信息提供一种有效的方法。例如,使用存储照片的语义网格组件,以及存储影像资料的语义网格,就可以建立连接和关联。例如,您可以搜索某个主题的照片,比如鲨鱼,还可以找到相关的影像资料(见图 4)。这是一个非常简单的例子。更可能的是,我们将可以看到语义网格被用于存储和标识复杂数据类型,例如复杂蛋白质和 DNA。 图 4. 在语义网格之间建立连接和关联 另外,网格所存储和处理的数据的定义让用户可以将多个网格连接在一起,提供更为复杂的计算。这里就有一个来自科学世界的很好的例子:DNA 和蛋白质。使用语义网格,您可以使用一个网格来处理 DNA 信息,使用另外一个网格对与这个 DNA 结构有关的蛋白质信息进行识别和处理,这可以通过将一个网格生成的数据提供给另外一个网格来实现。这个过程是可能的,因为数据和数据的结构在这两个网格系统中都是已知的,也都是可用的。在这两个网格系统之间共享数据只是处理并理解两个网格系统的语义数据:结构和格式(参见图 5)。 图 5. 在两个网格系统之间共享数据和数据结构 回页首 构建语义网格 关于语义 Web 和语义网格应该如何工作的标准和(我敢说)语义现在还在进行讨论,但是现在已经有了一些成果和想法,您可以在现有的网格环境中采用,这样在语义网格成为现实时就可以减轻迁移到语义网格标准的工作量。 最为重要的是,在设计网格时,需要考虑如何采用一种可以让其他人可以利用您所提供的资源的方式来进行开发。例如,如果您正在构建一个计算网格,就需要考虑用来支持这个计算网格的计算资源和应用程序是否可以足够灵活,能够让其他人也使用这些资源和应用程序。 其次,要考虑如何描述和定义网格所存储和使用的数据。网格所使用或生成的数据具有很好的结构化格式么?它们可以采用一种其他人也可以使用的方法进行描述或定义吗?或者如果其他人的数据采用了合适的格式来定义,网格能够处理这些数据吗? 最后,确保您熟悉不同标准(XML、RDF、OWL)的核心元素和实践,以及它们如何在网格和应用程序中应用。
何为网格GIS? 网格(Grid)GIS是利用现有的网格技术、空间信息基础设施、空间信息网络协议规范,形成一个虚拟的空间信息管理与处理环境,将空间地理分布的、异构的各种设备与系统进行集成,为用户提供一体化的空间信息应用服务的智能化信息平台。 与传统分布式GIS的主要区别是,松散耦合,异构、动态环境,跨区域跨多个管理域。 网格GIS的特点 (1)异构性、动态性的环境; (2)跨多管理域(测绘、国土资源、交通、气象、商务)及多区域的动态的资源共享。 未来,随着网格GIS体系结构的设计与实现,公益性地理空间信息服务方式将实现:实时集成(Just in time integration),应用按需供应(Application on demand),服务点播(Service on demand),处理器资源按需供应(CPU on demand),存储器资源按需供应(Memory on demand)等。
2005 年创刊的International Journal of Web and Grid Services《国际网络与网格服务杂志》,ISSN: 1741-1106,季刊,瑞士(INDERSCIENCE ENTERPRISES LTD, WORLD TRADE CENTER BLDG, 29 ROUTE DE PRE-BOIS, CASE POSTALE 896, GENEVA, SWITZERLAND, CH-1215)出版,2009年入选 Web of Science的Science Citation Index Expanded,目前在SCI数据库可以检索到该期刊2008年的第4卷1-4期到2009年的第5卷1-3期共44篇论文。 44 篇文章包括论文40篇、社论4篇。 44 篇文章的主要国家分布:日本10篇,意大利8篇,西班牙7篇,法国6篇,加拿大5篇,罗马尼亚3篇,中国、德国、希腊、英国各2篇等。 东南大学(Southeast Univ)在该刊2009年第5卷第1期3-16页发表了题目为A clustering analysis and agent-based trust model in a grid environment supporting virtual organizations论文。 44 篇文章共被引用5次,其中2009年被引用4次,2010年被引用1次,平均引用0.11次, H指数为2(有2篇文章每篇最少被引用2次)。 网址: http://www.inderscience.com/browse/index.php 编委会: http://www.inderscience.com/browse/index.php?journalID=47#board 作者指南: http://www.inderscience.com/browse/index.php?journalID=47#submission 在线投稿: http://www.inderscience.com/mapper.php?id=35jid=47
芯片上的网格(100114) 闵应骅 集成电路迅速发展了40年,虽然有许多物理学家预测了它的末日,它现在还在继续发展。当然,集成电路的工艺尺寸肯定是有限制的。 大约10年前吧!出现了SOC(System-On-a-Chip)。那时候,有人把它翻译为片上系统,基本上是按英文翻译的,但是忽略了中间的-。其实,这里强调的是芯片,而不是系统。所以应该翻成系统芯片,和存储器芯片、模拟电路芯片等词类似。在九华山庄论坛上我就发表了这个意见,得到不少人的赞同。但由于某些原因,这词还是没有广泛用起来,现在用这两者的都有。 现在又出来了Grid on a chip,但这次没有-,我把它翻成芯片上的网格。我们知道,Grid原意是指输电网。输电网技术仍在不断发展,同时,它也被应用到集成电路中来。 对于纳米芯片,由于各种原因,电源电压只能是1伏左右。而从外部,要给每一个微处理器送入多于100安培的电流。用铜线连接,损耗很大,而且要占用许多输人/出管脚,例如70%,只有少量管脚用于传递数据。这当然是不能允许的。近3-5年来,许多人研究在芯片内设电源变换器,以减少送入的电流,到芯片内再变成低电压,像配电系统中的变电站一样。 要做到这一点,首先要在材料上想办法。譬如用氮化镓,可能承受20伏的高电压。但不管怎么样,电感和电容在变换器中不可缺少,还有滤波器。这些东西不可能做到像晶体管那么小。有人用含钴的磁性材料做片上电感。还有办法是用三维芯片,把电感、电容做在另一块芯片上。但是,所有这些办法要想能转换出0.9V,1V,或者1.2V,三者都可以,那就很困难。这是当今纳米芯片发展中一个无法回避的问题,等待人们去创新。