项目说明
<p>[TOC]</p>
<h3>项目简介</h3>
<p><strong><font size='4' color="red">metdig诊断分析框架</font>由国家气象中心天气预报研发室诊断分析科负责研发,提供了常用的天气学诊断分析的python算法函数,模式产品定制图形绘制函数,以及可以实用的诊断分析系统代码示例。</strong>
该程序库仅支持在python3.7以上版本上运行。
安装方法详见<a href="https://www.showdoc.com.cn/metdig/6919985653839762" title="安装说明"><b>安装说明</b></a>。</p>
<h3>开发设计理念</h3>
<p>本系统需要整合各类在线数据资源,各资源的数据规范并不一致,在设计本系统中,系统中所使用的数据均采用STDA标准格式,使用本系统时,需先了解<a href="https://www.showdoc.com.cn/metdig?page_id=6193095910809903" title="STDA标准格式数据保存规范"><font size='3'><b>STDA标准格式数据保存规范</b></font></a>。</p>
<h3>整体框架介绍</h3>
<p><img src="https://www.showdoc.com.cn/server/api/attachment/visitFile?sign=14f084491274d730a037e97338013942" alt="metdig框架20201118new" title="metdig框架20201118new" /></p>
<ul>
<li><strong>hub诊断分析应用模块:</strong>为用户定制的基于气象数据的诊断分析结果提供可视化的应用功能,对返回图像数据和画板数据(onestep返回值)进行多种诊断分析结果的自定义叠加处理,提高扩展性。</li>
<li><strong>onestep诊断分析定制模块:</strong>为用户提供基于气象数据可定制的、可视化的诊断分析功能,实现各类实况分析、天气学诊断分析、天气学检验等产品的数据获取(调用io)、计算(调用cal)、处理和绘图(调用products),可返回图像数据和画板数据。</li>
<li><strong>io 数据资源访问模块:</strong>整合接入MICAPS CASSANDRA、CIMIS、CMADaaS、ERA5等在线数据API,提供模式预报,站点观测、卫星云图、天气雷达等气象数据的获取,并转换为统一的STDA标准格式为用户提供输入数据。</li>
<li><strong>cal 诊断分析计算模块:</strong>提供气象诊断分析计算和气象应用开发的基础功能函数,包括动力、热力、水汽、天气特征和统计分析等计算,以及其他数组处理、数学函数、物理常数、时间处理、客观分析等函数。所有计算函数均以STDA标准格式进行数据输出。</li>
<li><strong>products 产品可视化模块:</strong>提供动力、热力、水汽、天气特征和统计分析等诊断分析产品绘图处理功能。主要基于诊断分析数据(STDA标准格式数据),调用graphics绘图模块进行产品制作。</li>
<li><strong>graphics基础绘图及画板设置库:</strong>是products产品可视化模块的基础绘图函数库,提供基础画板设置和绘图函数。</li>
<li><strong>utl通用工具库:</strong>目前工具库中提供了STDA标准格式转换函数,包括Numpy->STDA,格点STDA->站点STDA。</li>
</ul>
<p><font size='3px'><b>模块之间的关联关系:</b></font></p>
<p>hub为整个框架的主入口。</p>
<ol>
<li>用户调用hub进行诊断分析产品处理定制并叠加处理(应用);</li>
<li>hub多进程调用onestep定制诊断分析产品处理;</li>
<li>onestep调用io获取数据,并转换为STDA标准格式,然后返回给onestep;</li>
<li>onestep调用cal对返回的STDA标准格式数据进行天气学诊断分析计算,并返回给onestep;</li>
<li>onestep调用products对计算后返回的STDA标准格式数据进行天气学诊断可视化绘图;</li>
<li>products进行绘图时调用graphics对图形进行基础画板设置,并绘制基础图形,生成诊断分析产品图。为了方便用户扩展使用同时返回画板和图形对象给onestep。</li>
</ol>
<h3>应用场景简介</h3>
<p>metdig诊断分析框架中,除了默认调用诊断分析应用模块hub外,诊断分析定制模块onestep、数据资源访问模块io、诊断分析计算模块cal和产品可视化模块products均可单独调用。可分为以下场景:</p>
<ol>
<li>默认调用hub:默认调用流程可查看上方模块之间的关联关系或查看整体框架中的红色流程;</li>
<li>单独调用onestep:用户可单独调用onestep模块进行产品定制,调用流程可查看整体框架中的深绿流程;</li>
<li>单独调用io:用户可单独调用io模块获取数据,io模块输出的数据为STDA标准格式数据;</li>
<li>组合调用io和cal:用户可组合调用io模块和cal模块获取数据并进行诊断分析计算,计算完成后,输出的数据为STDA标准格式数据,调用流程可查看整体框架中的草绿流程;</li>
<li>单独调用cal:用户可单独调用cal模块进行诊断分析计算,cal模块要求的输入数据为STDA标准格式,单独调用时,若输入数据不符合要求,可先调用utl工具库进行转换;</li>
<li>组合调用cal和products:用户可组合调用cal模块和products模块进行数据诊断分析并绘制产品图像,cal模块要求的输入数据为STDA标准格式,若输入数据不符合要求,可先调用utl工具库进行转换,调用流程可查看整体框架中的紫色流程;</li>
<li>单独调用products:用户可单独调用products模块进行产品可视化,products模块要求输入的数据为STDA标准格式,单独调用时,若输入数据不符合要求,可先调用utl工具库进行转换。</li>
</ol>
<h3>设计和研发者</h3>
<p>国家气象中心研发室</p>
<h3>协助开发公司</h3>
<p>北京炫丽云科技有限公司</p>