J a v a、P y t h o n和Ma t l a b混合编程及其在气象中的应用
2017-09-03北京信息科技大学陈宇罡汪永青焦瑞莉
北京信息科技大学 陈宇罡 汪永青 李 琳 焦瑞莉
中国科学院大气物理研究所 王立志
J a v a、P y t h o n和Ma t l a b混合编程及其在气象中的应用
北京信息科技大学 陈宇罡 汪永青 李 琳 焦瑞莉
中国科学院大气物理研究所 王立志
本文对于Java、Python和Matlab混合编程方法进行一定的探讨,并结合气象数据的分析处理的实际工作,通过重用原有的Matlab、Python的代码,在数据仓库软件RAMADDA的基础上,快速实现气象数据的统计、分析、发布、可视化,并为未来气象数据基于WEB的在线分析、可视化集成提供借鉴。
Python;Matlab;混合编程;代码重用;数据分析集成
Python是一种面向对象、解释型、动态数据类型的优秀高级通用程序设计语言,相比于其他语言,Python可以更便捷的实现原型开发,并能够和其他语言诸如C++、Java等很好的结合。Matlab是由mathworks公司开发的用于数值计算、科学仿真和数据可视化的高级计算语言和交互式环境,因其强大的计算和绘图功能在气象领域得到了广泛的应用。UCAR提供的开源内容与存储管理系统RAMADDA(Repository for Archiving, Managing and Accessing Diverse DAta)以Java为核心语言,通过IDV(Integrated Data Viewer)嵌入实现三维可视化,在地球科学领域得到广泛应用;其可以覆盖气象业务的大多数数据格式,以数据库技术、文件服务、IDV、Google Map API等技术为基础完成气象数据的内容管理。
因为Python和Matlab在气象数据处理中的广泛应用,大量的基于Python和Matlab的代码被开发并被广泛使用。本文以基于Java语言的RAMADDA系统,通过Java、Python和Matlab混合编程技术,将已有的Python和Matlab数据处理分析代码复用,并通过RAMADDA平台实现数据的快速存储、发布、分析处理及可视化。
