meteva

提供气象产品检验相关python程序


S1细节检验

<p>[TOC]</p> <pre><code class="language-python">%matplotlib inline %load_ext autoreload %autoreload 2 import meteva.base as meb import meteva.method as mem import meteva.perspact as mps import numpy as np import pandas as pd import datetime import meteva</code></pre> <h1>S1</h1> <p>s1评分评价的是预报对小尺度信息的刻画的准确性。其检验方法是,采用傅里叶变换的方法,过滤掉尺度大于(nx,ny)的波动,保留尺度在(nx,ny)以内的波动,然后计算<br /> *<em>&lt;font face=&quot;黑体&quot; color=green size=3&gt;S1 = 100</em>sum(abs(DY_i - DX_i))/sum(max(abs(DY_i),abs(DX_i))),其中DY_i ,DX_i是预报场、观测场在i处的小尺度分量。&lt;/font&gt;**<br /> s1评分越大代表误差越大,预报质量越差</p> <p>&lt;font face=&quot;黑体&quot; color=black size=4&gt;<strong>参考文献</strong>&lt;/font&gt;<br /> Thompson, J. C. and Carter, G. M. (1972) On some characteristics of the S1 score. J. Appl. Meteorol., 11, 1384–1385.<br /> Brown, B.G., Gilleland, E. and Ebert, E.E. (2012) Chapter 6: Forecasts of spatial fields. pp. 95–117, In Forecast Verification: A Practitioner's Guide in Atmospheric Science, 2nd edition. Edts. Jolliffee, I. T. and Stephenson, D. B., Chichester, West Sussex, U.K.: Wiley, 274 pp.</p> <p>&lt;font face=&quot;黑体&quot; color=Blue size=3&gt;<strong>S1(grd_ob,grd_fo,nx = 10,ny = 10,sigma = 1,gradFUN = &quot;KernelGradFUN&quot;)</strong>&lt;/font&gt; </p> <p>计算预报的S1评分</p> <table> <thead> <tr> <th style="text-align: left;">参数</th> <th style="text-align: center;">说明</th> </tr> </thead> <tbody> <tr> <td style="text-align: left;"><strong>&lt;font face=&quot;黑体&quot; color=Blue size=5&gt;grd_ob&lt;/font&gt;</strong></td> <td style="text-align: center;">网格数据形式的观测数据,只支持包含单一平面场的网格数据</td> </tr> <tr> <td style="text-align: left;"><strong>&lt;font face=&quot;黑体&quot; color=Blue size=5&gt;grd_fo&lt;/font&gt;</strong></td> <td style="text-align: center;">网格数据形式的预报数据,只支持包含单一平面场的网格数据</td> </tr> <tr> <td style="text-align: left;"><strong>nx</strong></td> <td style="text-align: center;">计算X和Y的梯度场的函数时用到的卷积核的宽度</td> </tr> <tr> <td style="text-align: left;"><strong>ny</strong></td> <td style="text-align: center;">计算X和Y的梯度场的函数时用到的卷积核的高度</td> </tr> <tr> <td style="text-align: left;"><strong>gradFUN</strong></td> <td style="text-align: center;">用于计算X和Y的梯度场的函数,默认是&quot;KernelGradFUN&quot;,使用高斯核的拉普拉斯算子。</td> </tr> <tr> <td style="text-align: left;">&lt;font face=&quot;黑体&quot; color=blue size=5&gt;return&lt;/font&gt;</td> <td style="text-align: center;">实数形式的评分值</td> </tr> </tbody> </table> <pre><code class="language-python">import meteva.base as meb grid1 = meb.grid([100, 120, 0.05], [24, 40, 0.05]) path_ob = r'H:\test_data\input\mem\mode\ob\rain03\20072611.000.nc' path_fo = r'H:\test_data\input\mem\mode\ec\rain03\20072608.003.nc' grd_ob = meb.read_griddata_from_nc(path_ob, grid=grid1, time=&amp;quot;2020072611&amp;quot;, dtime=0, data_name=&amp;quot;OBS&amp;quot;) grd_fo = meb.read_griddata_from_nc(path_fo, grid=grid1, time=&amp;quot;2020072608&amp;quot;, dtime=3, data_name=&amp;quot;ECMWF&amp;quot;) meb.plot_tools.plot_2d_grid_list([grd_ob,grd_fo],ncol = 2,cmap= &amp;quot;rain_3h&amp;quot;)</code></pre> <p><img src="https://www.showdoc.com.cn/server/api/attachment/visitFile?sign=a9d0a7a341c281263cd351c7fdd01a52&amp;amp;file=file.png" alt="" /></p> <pre><code class="language-python">look=mem.space.S1(grd_ob, grd_fo,nx=3,ny = 3) print(&amp;quot;s1评分 = &amp;quot; + str(look[&amp;quot;s1&amp;quot;])) meb.plot_tools.plot_2d_grid_list([look[&amp;quot;ob_grad&amp;quot;],look[&amp;quot;fo_grad&amp;quot;]],ncol = 2)</code></pre> <pre><code>s1评分 = 93.06130238986746</code></pre> <p><img src="https://www.showdoc.com.cn/server/api/attachment/visitFile?sign=84d43caaa12f976dfe485b5f77a6c4b1&amp;amp;file=file.png" alt="" /></p> <pre><code class="language-python">look=mem.space.S1(grd_ob, grd_fo,nx=30,ny = 30) print(&amp;quot;s1评分 = &amp;quot; + str(look[&amp;quot;s1&amp;quot;])) meb.plot_tools.plot_2d_grid_list([look[&amp;quot;ob_grad&amp;quot;],look[&amp;quot;fo_grad&amp;quot;]],ncol = 2)</code></pre> <pre><code>s1评分 = 89.56671723309846</code></pre> <p><img src="https://www.showdoc.com.cn/server/api/attachment/visitFile?sign=df1e0f0e286910f3b319226afe97296d&amp;amp;file=file.png" alt="" /></p>

页面列表

ITEM_HTML