metdig

智能网格预报可视化诊断分析及权重推荐系统


水汽诊断分析计算moisture

<p>[TOC]</p> <h1>相对湿度计算</h1> <p>利用温度和露点温度计算相对湿度,代码示例如下:</p> <pre><code class="language-python">relative_humidity_from_dewpoint(tmp,td)</code></pre> <p>&lt;font size=&quot;4&quot;&gt;&lt;b&gt;参数说明&lt;/b&gt;&lt;/font&gt;</p> <table> <thead> <tr> <th style="text-align: left;">参数</th> <th style="text-align: left;">必选</th> <th style="text-align: left;">类型</th> <th style="text-align: left;">说明</th> </tr> </thead> <tbody> <tr> <td style="text-align: left;">tmp</td> <td style="text-align: left;">&lt;font color=&quot;red&quot;&gt;是&lt;/font&gt;</td> <td style="text-align: left;">stda</td> <td style="text-align: left;">温度</td> </tr> <tr> <td style="text-align: left;">td</td> <td style="text-align: left;">&lt;font color=&quot;red&quot;&gt;是&lt;/font&gt;</td> <td style="text-align: left;">stda</td> <td style="text-align: left;">露点温度</td> </tr> </tbody> </table> <table> <thead> <tr> <th style="text-align: left;">返回值</th> <th style="text-align: left;">说明</th> </tr> </thead> <tbody> <tr> <td style="text-align: left;">rh</td> <td style="text-align: left;">STDA标准格式的相对湿度</td> </tr> </tbody> </table> <p>&lt;font size=&quot;4&quot;&gt;&lt;b&gt;调用示例&lt;/b&gt;&lt;/font&gt;</p> <pre><code class="language-python"></code></pre> <p>&lt;font size=&quot;4&quot;&gt;&lt;b&gt;输出信息&lt;/b&gt;&lt;/font&gt;</p> <pre><code class="language-python"></code></pre> <h1>根据相对湿度计算露点</h1> <p>利用温度和相对湿度计算露点温度,代码示例如下:</p> <pre><code class="language-python">dewpoint_from_relative_humidity(tmp, rh)</code></pre> <p>&lt;font size=&quot;4&quot;&gt;&lt;b&gt;参数说明&lt;/b&gt;&lt;/font&gt;</p> <table> <thead> <tr> <th style="text-align: left;">参数</th> <th style="text-align: left;">必选</th> <th style="text-align: left;">类型</th> <th style="text-align: left;">说明</th> </tr> </thead> <tbody> <tr> <td style="text-align: left;">tmp</td> <td style="text-align: left;">&lt;font color=&quot;red&quot;&gt;是&lt;/font&gt;</td> <td style="text-align: left;">stda</td> <td style="text-align: left;">air temperature</td> </tr> <tr> <td style="text-align: left;">rh</td> <td style="text-align: left;">&lt;font color=&quot;red&quot;&gt;是&lt;/font&gt;</td> <td style="text-align: left;">stda</td> <td style="text-align: left;">relative humidity</td> </tr> </tbody> </table> <table> <thead> <tr> <th style="text-align: left;">返回值</th> <th style="text-align: left;">说明</th> </tr> </thead> <tbody> <tr> <td style="text-align: left;">stda</td> <td style="text-align: left;">STDA标准格式的露点温度数据</td> </tr> </tbody> </table> <p>&lt;font size=&quot;4&quot;&gt;&lt;b&gt;调用示例&lt;/b&gt;&lt;/font&gt;</p> <pre><code class="language-python">import datetime from metdig.io.cassandra import get_model_grid from metdig.utl import utl_stda_grid from metdig.cal import moisture init_time = datetime.datetime(2020, 7, 25, 8) fhour = 0 tmp = get_model_grid(init_time=init_time, fhour=fhour, model_name='ecmwf', var_name='tmp', level=500) rh = get_model_grid(init_time=init_time, fhour=fhour, model_name='ecmwf', var_name='rh', level=500) td = moisture.dewpoint_from_relative_humidity(tmp, rh) print(td)</code></pre> <p>&lt;font size=&quot;4&quot;&gt;&lt;b&gt;输出信息&lt;/b&gt;&lt;/font&gt;</p> <pre><code class="language-python">&amp;lt;xarray.DataArray (member: 1, level: 1, time: 1, dtime: 1, lat: 451, lon: 901)&amp;gt; array([[[[[[-40.505894, -40.483128, -40.47175 , ..., -20.539557, -20.138365, -19.789034], [-40.426224, -40.426224, -40.426224, ..., -22.193771, -22.166649, -21.730204], [-40.34657 , -40.380703, -40.403465, ..., -24.002176, -23.935495, -23.420006], ..., [-22.147375, -22.162176, -21.97218 , ..., -25.876303, -25.78621 , -25.832115], [-22.369833, -22.191776, -22.191776, ..., -26.473087, -26.488335, -26.36493 ], [-22.639416, -22.624666, -22.624666, ..., -25.524725, -25.198145, -24.89834 ]]]]]], dtype=float32) Coordinates: * member (member) int32 0 * level (level) int32 500 * time (time) datetime64[ns] 2020-07-25T08:00:00 * dtime (dtime) int32 0 * lat (lat) float64 -10.0 -9.8 -9.6 -9.4 -9.2 ... 79.4 79.6 79.8 80.0 * lon (lon) float64 0.0 0.2 0.4 0.6 0.8 ... 179.2 179.4 179.6 179.8 180.0 Attributes: var_name: td var_cn_name: 露点温度 var_units: degC valid_time: 0 data_source: data_type: model_name: </code></pre> <h1>根据绝对湿度计算露点</h1> <p>代码示例如下:</p> <pre><code class="language-python">dewpoint_from_specific_humidity(pres, tmp, spfh)</code></pre> <p>&lt;font size=&quot;4&quot;&gt;&lt;b&gt;参数说明&lt;/b&gt;&lt;/font&gt;</p> <table> <thead> <tr> <th style="text-align: left;">参数</th> <th style="text-align: left;">必选</th> <th style="text-align: left;">类型</th> <th style="text-align: left;">说明</th> </tr> </thead> <tbody> <tr> <td style="text-align: left;">pres</td> <td style="text-align: left;">&lt;font color=&quot;red&quot;&gt;是&lt;/font&gt;</td> <td style="text-align: left;">stda</td> <td style="text-align: left;">pressure</td> </tr> <tr> <td style="text-align: left;">tmp</td> <td style="text-align: left;">&lt;font color=&quot;red&quot;&gt;是&lt;/font&gt;</td> <td style="text-align: left;">stda</td> <td style="text-align: left;">air temperature</td> </tr> <tr> <td style="text-align: left;">spfh</td> <td style="text-align: left;">&lt;font color=&quot;red&quot;&gt;是&lt;/font&gt;</td> <td style="text-align: left;">stda</td> <td style="text-align: left;">specific_humidity</td> </tr> </tbody> </table> <table> <thead> <tr> <th style="text-align: left;">返回值</th> <th style="text-align: left;">说明</th> </tr> </thead> <tbody> <tr> <td style="text-align: left;">stda</td> <td style="text-align: left;">STDA标准格式露点温度</td> </tr> </tbody> </table> <p>&lt;font size=&quot;4&quot;&gt;&lt;b&gt;调用示例&lt;/b&gt;&lt;/font&gt;</p> <pre><code class="language-python"></code></pre> <p>&lt;font size=&quot;4&quot;&gt;&lt;b&gt;输出信息&lt;/b&gt;&lt;/font&gt;</p> <pre><code class="language-python"></code></pre> <h1>饱和水蒸气压计算</h1> <p>利用温度计算饱和水蒸气压,代码示例如下:</p> <pre><code class="language-python">saturation_vapor_pressure(tmp)</code></pre> <p>&lt;font size=&quot;4&quot;&gt;&lt;b&gt;参数说明&lt;/b&gt;&lt;/font&gt;</p> <table> <thead> <tr> <th style="text-align: left;">参数</th> <th style="text-align: left;">必选</th> <th style="text-align: left;">类型</th> <th style="text-align: left;">说明</th> </tr> </thead> <tbody> <tr> <td style="text-align: left;">tmp</td> <td style="text-align: left;">&lt;font color=&quot;red&quot;&gt;是&lt;/font&gt;</td> <td style="text-align: left;">stda</td> <td style="text-align: left;">air temperature</td> </tr> </tbody> </table> <table> <thead> <tr> <th style="text-align: left;">返回值</th> <th style="text-align: left;">说明</th> </tr> </thead> <tbody> <tr> <td style="text-align: left;">stda</td> <td style="text-align: left;">STDA标准格式的饱和水蒸气压数据</td> </tr> </tbody> </table> <p>&lt;font size=&quot;4&quot;&gt;&lt;b&gt;调用示例&lt;/b&gt;&lt;/font&gt;</p> <pre><code class="language-python">import datetime from metdig.io.cassandra import get_model_grid from metdig.utl import utl_stda_grid from metdig.cal import moisture init_time = datetime.datetime(2020, 7, 25, 8) fhour = 0 tmp = get_model_grid(init_time=init_time, fhour=fhour, model_name='ecmwf', var_name='tmp', level=500) es = moisture.saturation_vapor_pressure(tmp) print(es)</code></pre> <p>&lt;font size=&quot;4&quot;&gt;&lt;b&gt;输出信息&lt;/b&gt;&lt;/font&gt;</p> <pre><code class="language-python">&amp;lt;xarray.DataArray (member: 1, level: 1, time: 1, dtime: 1, lat: 451, lon: 901)&amp;gt; array([[[[[[4.013016 , 4.0225654 , 4.027347 , ..., 3.9373472 , 3.946736 , 3.9420395 ], [4.046526 , 4.046526 , 4.046526 , ..., 3.9233015 , 3.9326606 , 3.9373472 ], [4.080284 , 4.0657864 , 4.0561457 , ..., 3.9373472 , 3.9608564 , 3.970295 ], ..., [1.753811 , 1.7515329 , 1.7515329 , ..., 0.92901015, 0.9251474 , 0.9212993 ], [1.7492572 , 1.7469844 , 1.7469844 , ..., 0.90227306, 0.9010173 , 0.8997631 ], [1.7379192 , 1.7401816 , 1.7401816 , ..., 0.8823679 , 0.87868005, 0.87378424]]]]]], dtype=float32) Coordinates: * member (member) int32 0 * level (level) int32 500 * time (time) datetime64[ns] 2020-07-25T08:00:00 * dtime (dtime) int32 0 * lat (lat) float64 -10.0 -9.8 -9.6 -9.4 -9.2 ... 79.4 79.6 79.8 80.0 * lon (lon) float64 0.0 0.2 0.4 0.6 0.8 ... 179.2 179.4 179.6 179.8 180.0 Attributes: var_name: es var_cn_name: 饱和水汽压 var_units: hPa valid_time: 0 data_source: data_type: model_name: </code></pre> <h1>比湿计算</h1> <p>利用露点温度和压力计算比湿,代码示例如下:</p> <pre><code class="language-python">specific_humidity_from_dewpoint(td, pres)</code></pre> <p>&lt;font size=&quot;4&quot;&gt;&lt;b&gt;参数说明&lt;/b&gt;&lt;/font&gt;</p> <table> <thead> <tr> <th style="text-align: left;">参数</th> <th style="text-align: left;">必选</th> <th style="text-align: left;">类型</th> <th style="text-align: left;">说明</th> </tr> </thead> <tbody> <tr> <td style="text-align: left;">td</td> <td style="text-align: left;">&lt;font color=&quot;red&quot;&gt;是&lt;/font&gt;</td> <td style="text-align: left;">stda</td> <td style="text-align: left;">dewpoint temperature</td> </tr> <tr> <td style="text-align: left;">pres</td> <td style="text-align: left;">&lt;font color=&quot;red&quot;&gt;是&lt;/font&gt;</td> <td style="text-align: left;">stda</td> <td style="text-align: left;">pressure</td> </tr> </tbody> </table> <table> <thead> <tr> <th style="text-align: left;">返回值</th> <th style="text-align: left;">说明</th> </tr> </thead> <tbody> <tr> <td style="text-align: left;">stda</td> <td style="text-align: left;">STDA标准格式的比湿数据</td> </tr> </tbody> </table> <p>&lt;font size=&quot;4&quot;&gt;&lt;b&gt;调用示例&lt;/b&gt;&lt;/font&gt;</p> <pre><code class="language-python">import datetime from metdig.io.cassandra import get_model_grid from metdig.utl import utl_stda_grid from metdig.cal import moisture init_time = datetime.datetime(2020, 7, 25, 8) fhour = 0 tmp = get_model_grid(init_time=init_time, fhour=fhour, model_name='ecmwf', var_name='tmp', level=500) rh = get_model_grid(init_time=init_time, fhour=fhour, model_name='ecmwf', var_name='rh', level=500) pres = utl_stda_grid.gridstda_full_like(tmp, 500, var_name='pres') td = moisture.dewpoint_from_relative_humidity(tmp, rh) spfh = moisture.specific_humidity_from_dewpoint(td, pres) print(spfh)</code></pre> <p>&lt;font size=&quot;4&quot;&gt;&lt;b&gt;输出信息&lt;/b&gt;&lt;/font&gt;</p> <pre><code class="language-python">&amp;lt;xarray.DataArray (member: 1, level: 1, time: 1, dtime: 1, lat: 451, lon: 901)&amp;gt; array([[[[[[0.22375119, 0.22428374, 0.2245504 , ..., 1.4943135 , 1.5470659 , 1.5943544 ], [0.22561976, 0.22561976, 0.22561976, ..., 1.2934303 , 1.2965171 , 1.347121 ], [0.22750203, 0.22669367, 0.2261559 , ..., 1.1018617 , 1.1084452 , 1.1605451 ], ..., [1.2987164 , 1.2970284 , 1.3188504 , ..., 0.9306131 , 0.93826216, 0.9343567 ], [1.2735481 , 1.2936574 , 1.2936574 , ..., 0.88134277, 0.8801147 , 0.890094 ], [1.243634 , 1.2452545 , 1.2452545 , ..., 0.96078557, 0.9895967 , 1.016728 ]]]]]], dtype=float32) Coordinates: * member (member) int32 0 * level (level) int32 500 * time (time) datetime64[ns] 2020-07-25T08:00:00 * dtime (dtime) int32 0 * lat (lat) float64 -10.0 -9.8 -9.6 -9.4 -9.2 ... 79.4 79.6 79.8 80.0 * lon (lon) float64 0.0 0.2 0.4 0.6 0.8 ... 179.2 179.4 179.6 179.8 180.0 Attributes: var_name: spfh var_cn_name: 比湿 var_units: g/kg valid_time: 0 data_source: data_type: model_name: </code></pre> <h1>单层水汽通量计算</h1> <p>利用比湿和风速计算单层水汽通量,代码示例如下:</p> <pre><code class="language-python">cal_ivt_singlelevel(spfh, wsp)</code></pre> <p>&lt;font size=&quot;4&quot;&gt;&lt;b&gt;参数说明&lt;/b&gt;&lt;/font&gt;</p> <table> <thead> <tr> <th style="text-align: left;">参数</th> <th style="text-align: left;">必选</th> <th style="text-align: left;">类型</th> <th style="text-align: left;">说明</th> </tr> </thead> <tbody> <tr> <td style="text-align: left;">spfh</td> <td style="text-align: left;">&lt;font color=&quot;red&quot;&gt;是&lt;/font&gt;</td> <td style="text-align: left;">stda</td> <td style="text-align: left;">specific humidity. dims must be (1,1,1,1,M,N)</td> </tr> <tr> <td style="text-align: left;">wsp</td> <td style="text-align: left;">&lt;font color=&quot;red&quot;&gt;是&lt;/font&gt;</td> <td style="text-align: left;">stda</td> <td style="text-align: left;">wind speed. dims must be (1,1,1,1,M,N)</td> </tr> <tr> <td style="text-align: left;">pres</td> <td style="text-align: left;">&lt;font color=&quot;red&quot;&gt;是&lt;/font&gt;</td> <td style="text-align: left;">stda</td> <td style="text-align: left;">pressure. dims must be (1,1,1,1,M,N)</td> </tr> </tbody> </table> <table> <thead> <tr> <th style="text-align: left;">返回值</th> <th style="text-align: left;">说明</th> </tr> </thead> <tbody> <tr> <td style="text-align: left;">stda</td> <td style="text-align: left;">STDA标准格式的单层水汽通量数据</td> </tr> </tbody> </table> <p>&lt;font size=&quot;4&quot;&gt;&lt;b&gt;调用示例&lt;/b&gt;&lt;/font&gt;</p> <pre><code class="language-python">import datetime from metdig.io.cassandra import get_model_grid from metdig.utl import utl_stda_grid from metdig.cal import moisture from metdig.cal import other init_time = datetime.datetime(2020, 7, 25, 8) fhour = 0 spfh = get_model_grid(init_time=init_time, fhour=fhour, model_name='ecmwf', var_name='spfh', level=850) u = get_model_grid(init_time=init_time, fhour=fhour, model_name='ecmwf', var_name='u', level=850) v = get_model_grid(init_time=init_time, fhour=fhour, model_name='ecmwf', var_name='v', level=850) wsp = other.wind_speed(u, v) ivt = moisture.cal_ivt_singlelevel(spfh, u) print(ivt)</code></pre> <p>&lt;font size=&quot;4&quot;&gt;&lt;b&gt;输出信息&lt;/b&gt;&lt;/font&gt;</p> <pre><code class="language-python">&amp;lt;xarray.DataArray (member: 1, level: 1, time: 1, dtime: 1, lat: 451, lon: 901)&amp;gt; array([[[[[[6.0651522e+00, 6.2957869e+00, 6.8212051e+00, ..., 1.3670409e+02, 1.3461769e+02, 1.3730931e+02], [6.6590381e+00, 6.8233337e+00, 7.4337192e+00, ..., 1.3790312e+02, 1.3706523e+02, 1.4221974e+02], [7.2640104e+00, 7.2411675e+00, 7.6846843e+00, ..., 1.3796332e+02, 1.4338327e+02, 1.4708617e+02], ..., [5.8385158e-01, 8.6818385e-01, 1.1739771e+00, ..., 7.3954797e-01, 6.2509090e-01, 5.1425695e-01], [1.5594475e-01, 3.3214533e-01, 5.5678582e-01, ..., 1.8312185e+00, 2.3395541e+00, 2.7247617e+00], [1.0890891e-01, 3.0969799e-02, 1.1555010e-01, ..., 5.5099993e+00, 6.0330100e+00, 6.5511551e+00]]]]]], dtype=float32) Coordinates: * member (member) int32 0 * level (level) int32 850 * time (time) datetime64[ns] 2020-07-25T08:00:00 * dtime (dtime) int32 0 * lat (lat) float64 -10.0 -9.8 -9.6 -9.4 -9.2 ... 79.4 79.6 79.8 80.0 * lon (lon) float64 0.0 0.2 0.4 0.6 0.8 ... 179.2 179.4 179.6 179.8 180.0 Attributes: var_name: wvfl var_cn_name: 水汽通量 var_units: 0.1g/(cm*hPa*s) valid_time: 0 data_source: data_type: model_name: </code></pre> <h1>水汽压计算</h1> <p>利用温度和相对湿度计算水汽压,代码示例如下:</p> <pre><code class="language-python">cal_p_vapor(tmp, rh)</code></pre> <p>&lt;font size=&quot;4&quot;&gt;&lt;b&gt;参数说明&lt;/b&gt;&lt;/font&gt;</p> <table> <thead> <tr> <th style="text-align: left;">参数</th> <th style="text-align: left;">必选</th> <th style="text-align: left;">类型</th> <th style="text-align: left;">说明</th> </tr> </thead> <tbody> <tr> <td style="text-align: left;">tmp</td> <td style="text-align: left;">&lt;font color=&quot;red&quot;&gt;是&lt;/font&gt;</td> <td style="text-align: left;">stda</td> <td style="text-align: left;">temperature</td> </tr> <tr> <td style="text-align: left;">rh</td> <td style="text-align: left;">&lt;font color=&quot;red&quot;&gt;是&lt;/font&gt;</td> <td style="text-align: left;">stda</td> <td style="text-align: left;">relative humidity</td> </tr> </tbody> </table> <table> <thead> <tr> <th style="text-align: left;">返回值</th> <th style="text-align: left;">说明</th> </tr> </thead> <tbody> <tr> <td style="text-align: left;">stda</td> <td style="text-align: left;">STDA标准格式的水汽压数据</td> </tr> </tbody> </table> <p>&lt;font size=&quot;4&quot;&gt;&lt;b&gt;调用示例&lt;/b&gt;&lt;/font&gt;</p> <pre><code class="language-python">import datetime from metdig.io.cassandra import get_model_grid from metdig.utl import utl_stda_grid from metdig.cal import moisture init_time = datetime.datetime(2020, 7, 25, 8) fhour = 0 tmp = get_model_grid(init_time=init_time, fhour=fhour, model_name='ecmwf', var_name='tmp', level=500) rh = get_model_grid(init_time=init_time, fhour=fhour, model_name='ecmwf', var_name='rh', level=500) p_vapor = moisture.cal_p_vapor(tmp, rh) print(p_vapor)</code></pre> <p>&lt;font size=&quot;4&quot;&gt;&lt;b&gt;输出信息&lt;/b&gt;&lt;/font&gt;</p> <pre><code class="language-python">&amp;lt;xarray.DataArray (member: 1, level: 1, time: 1, dtime: 1, lat: 451, lon: 901)&amp;gt; array([[[[[[0.17950411, 0.17993227, 0.18014666, ..., 1.1978315 , 1.2400856 , 1.2779502 ], [0.18100657, 0.18100657, 0.18100657, ..., 1.0369226 , 1.0394021 , 1.0799408 ], [0.18252018, 0.18187013, 0.1814379 , ..., 0.8834561 , 0.8887439 , 0.9304933 ], ..., [1.0381818 , 1.0368267 , 1.0542578 , ..., 0.7414669 , 0.74753857, 0.74440914], [1.0180651 , 1.0341218 , 1.0341218 , ..., 0.702099 , 0.70111555, 0.70905423], [0.9941407 , 0.99544084, 0.99544084, ..., 0.76523644, 0.78814864, 0.8097136 ]]]]]], dtype=float32) Coordinates: * member (member) int32 0 * level (level) int32 500 * time (time) datetime64[ns] 2020-07-25T08:00:00 * dtime (dtime) int32 0 * lat (lat) float64 -10.0 -9.8 -9.6 -9.4 -9.2 ... 79.4 79.6 79.8 80.0 * lon (lon) float64 0.0 0.2 0.4 0.6 0.8 ... 179.2 179.4 179.6 179.8 180.0 Attributes: var_name: p_vapor var_cn_name: 水汽压 var_units: valid_time: 0 data_source: data_type: model_name: </code></pre> <h1>水汽通量散度计算</h1> <p>代码示例如下:</p> <pre><code class="language-python">water_wapor_flux_divergence(u,v,spfh)</code></pre> <p>&lt;font size=&quot;4&quot;&gt;&lt;b&gt;参数说明&lt;/b&gt;&lt;/font&gt;</p> <table> <thead> <tr> <th style="text-align: left;">参数</th> <th style="text-align: left;">必选</th> <th style="text-align: left;">类型</th> <th style="text-align: left;">说明</th> </tr> </thead> <tbody> <tr> <td style="text-align: left;">u</td> <td style="text-align: left;">&lt;font color=&quot;red&quot;&gt;是&lt;/font&gt;</td> <td style="text-align: left;">stda</td> <td style="text-align: left;">x component of the wind</td> </tr> <tr> <td style="text-align: left;">v</td> <td style="text-align: left;">&lt;font color=&quot;red&quot;&gt;是&lt;/font&gt;</td> <td style="text-align: left;">stda</td> <td style="text-align: left;">y component of the wind</td> </tr> <tr> <td style="text-align: left;">spfh</td> <td style="text-align: left;">&lt;font color=&quot;red&quot;&gt;是&lt;/font&gt;</td> <td style="text-align: left;">stda</td> <td style="text-align: left;">比湿</td> </tr> </tbody> </table> <table> <thead> <tr> <th style="text-align: left;">返回值</th> <th style="text-align: left;">说明</th> </tr> </thead> <tbody> <tr> <td style="text-align: left;">wvfldiv</td> <td style="text-align: left;">1</td> </tr> </tbody> </table> <p>&lt;font size=&quot;4&quot;&gt;&lt;b&gt;调用示例&lt;/b&gt;&lt;/font&gt;</p> <pre><code class="language-python"></code></pre> <p>&lt;font size=&quot;4&quot;&gt;&lt;b&gt;输出信息&lt;/b&gt;&lt;/font&gt;</p> <pre><code class="language-python"></code></pre>

页面列表

ITEM_HTML