2
\ begingroup美元

有人知道如何用NCL在WRF中计算垂直积分水分通量吗?这将是最好的,如果你能共享一个NCL脚本。这是我的代码,我用这个代码来计算一个月的平均水分通量。但我混淆了最后输出的单位。另一个问题是,我不确定是否需要将输出除以9.8?

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;dir1 = " /用户/ gerry /桌面/ WRF_EXTPCP / wrftest / FILES1 = systemfunc(“ls”+ dir1 + wrfout_d01_ *) a1 = addfile (FILES1 +“.nc”,”r ") ;------- 计算总层水汽通量 -------------------------- psfc = wrf_user_getvar (a1,“psfc”,1)* 0.01;表面压力,转到hPa (;WRF中PSFC的单位为Pa) pres = wrf_user_getvar(a1,“压力”,-1);气压hPa(时间,高度,纬度,时间)temp = wrf_user_getvar(a1,"tk",-1);K rh = wrf_user_getvar(a1,"rh",-1);% ua = wrf_user_getvar(a1,"ua",-1);M s-1 va = wrf_user_getvar(a1,"va",-1);M s-1;printVarSummary (psfc); (time,lat,lon) ; printVarSummary(pres) ; (time,level,lat,lon) ; printVarSummary(temp) ; (time,level,lat,lon) ; printVarSummary(rh) ; (time,level,lat,lon) ; printVarSummary(ua) ; (time,level,lat,lon) ; printVarSummary(va) ; (time,level,lat,lon) psfc1 = dim_avg_n_Wrap(psfc,0) pres1 = dim_avg_n_Wrap(pres,0) temp1 = dim_avg_n_Wrap(temp,0) rh1 = dim_avg_n_Wrap(rh,0) ua1 = dim_avg_n_Wrap(ua,0) va1 = dim_avg_n_Wrap(va,0) ;https://www.ncl.ucar.edu/Document/Functions/Built-in/mixhum_ptrh.shtml shum = mixhum_ptrh(pres1,temp1,rh1,2) ;units: (hPA,K,%,kg/kg);calculate the specific humidity(2),(1)means mixing ratio printVarSummary(shum) uq = ua1 * shum ;vapor flux vq = va1 * shum copy_VarCoords(psfc(0,:,:), psfc1) copy_VarCoords(ua(0,:,:,:), uq) copy_VarCoords(va(0,:,:,:), vq) copy_VarCoords(pres(0,:,:,:), pres1) ;;--vertical integrated moisture flux ptop = 100 ; top layer pressure pbot = 1100 uqflux = vibeta(pres1(lat|:,lon|:,lev|:),uq(lat|:,lon|:,lev|:),2,psfc1,pbot,ptop)/9.8 ;should divide 9.8?? vqflux = vibeta(pres1(lat|:,lon|:,lev|:),vq(lat|:,lon|:,lev|:),2,psfc1,pbot,ptop)/9.8 ; 1 means linear interpolation, 2 means log interpolation qflux = sqrt(uqflux^2+vqflux^2)
\ endgroup美元
8
  • 1
    \ begingroup美元 esrl.noaa.gov / psd /数据/复合材料/天/ calculation.html您可以尝试使用该页上的信息。告诉我们你在哪里卡住了,然后我们可以试着在那个点上插话。 \ endgroup美元
    - - - - - -gansub
    2018年12月22日3:38
  • \ begingroup美元 如何定义一个层?一个层不是一个压力面。通常在数值上是两个曲面的平均值。我提供的链接提供了一个关于他们如何计算层的想法 \ endgroup美元
    - - - - - -gansub
    2018年12月22日4:16
  • \ begingroup美元 是的,你说得对。事实上,我已经搜索了邮件列表,并没有找到任何有用的信息。 \ endgroup美元
    - - - - - -Love_qq_xq
    2018年12月22日4:17
  • \ begingroup美元 我用NCL中的维贝塔函数得到了整个层从1100到100的水分通量。 \ endgroup美元
    - - - - - -Love_qq_xq
    2018年12月22日4:19
  • \ begingroup美元 不,那不是数值大气层的定义。层可以用多种方式定义。通常是先考虑表面,然后再考虑上面和下面。取这三个曲面的平均值。然后在层间积分或者在层间做辛普森求和来积分或者其他的数值积分方案 \ endgroup美元
    - - - - - -gansub
    2018年12月22日4:43

1回答1

5
\ begingroup美元

我将根据这篇论文的作者是如何计算的来解释我的答案垂直整合的湿气通量辐合是雷暴的预报器.这是他们论文中定义的方程

$ $ VIMFC = - \压裂{1}{g} \ int_ {700 \, hPa} ^ {1000 \, hPa} \(\压裂{\偏u q} {x} \部分+ \压裂{\部分v q}{\偏y}) * dp $ $

关于垂直积分水分通量的参考,请参阅参考文献中的方程印度季风起止的水文定义

$ $ VIMFT = - \压裂{1}{g} \ int_ {700 \, hPa} ^ {1000 \, hPa} (q * u + q * v) * dp $ $

因此,我将为这个方程的数值实现提供一个算法,人们的意见可能会有所不同,到底是什么构成了NWP中的“大气层”。

在这个方程中,q是比湿度,u和v是纬向和经向速度,p是压力,g是重力加速度。

水分通量是收敛的还是发散的

$ $(\压裂{\偏u q} {x} \部分+ \压裂{\部分v q}{\偏y}) $ $

水分通量为

$$ q * u + q * v $$

然后,你需要将以下层的水平水汽通量收敛(或在你的情况下水汽通量)相加1)1000 - 925 hPa 2) 925-850 hPa 3) 850-700 hPa。因此,“层”的定义是主观的,如果你认为需要一个深层而不是浅层,你可以包括三个压力面。从数值上讲,一层可以认为是两个压力面的平均值。以你的情况为例,你取1000 hPa和925 hPa表面的平均速度和1000 hPa和925 hPa表面的平均比湿度。

一旦你计算水平湿度通量(或者如果你正在计算MFC,那么你需要在网格边界上使用有限中心差和向后和向前差,这个过程在ESSE答案中解释-水分通量收敛数值程序这里计算MFC的有限差分)在每一层上乘以dp,然后将贡献相加。

更新

在回答评论中的问题时

1000 - 925美元

不应该被理解为减法,而是平均值。

需要做的是按以下方式取两个压力面的平均值

$ q_{layer} = (q_{1000} + q_{925})/2$

$ u_{layer} = (u_{1000} + u_{925})/2$

$ v_{layer} = (v_{1000} + v_{925})/2$

一旦你对每一层都这样做,乘以相应的dp值,在这种情况下

$ dp = 1000 -925 $

这是减法。然后,将各个值代入每个层的个人贡献的总和,然后将各层相加

$ (q_{层}* u_{层}+ q_{层}* v_{层})* dp美元

VIMFC的单元通常是

$$ 10^−5 \,kg \, m^−2 \,s^−1 $$

\ endgroup美元
2
  • \ begingroup美元 亲爱的@gansub,你的答案对我来说不清楚。你能再说清楚一点吗?例如,这是正确的吗?: dp = 1000 - 925,925 - 850,等qu = 100/g* (q_1000*u_1000*(1000 - 925) + q_925*u_925*(925 - 850) + q_850*u_850*(850 - 700) + q_700*u_700*(700 - 500)) \ endgroup美元
    - - - - - -塞吉奥
    2019年2月24日14:45
  • \ begingroup美元 谢谢你的最新消息。但是,我是这样计算VIMFT的:qu = (((u925*q925 + u1000*q1000)/2)*(1000 - 925) + (((u850*q850 + u925*q925)/2)*(925 - 850)) +…其他图层和qv也是一样的。我生成了与文献一致的向量图。然而,你提到的计算散度的链接对我不起作用。对于差值,我应该用得到的qu和qv,对吧?多谢! ! \ endgroup美元
    - - - - - -塞吉奥
    2019年2月27日15:25

这不是你想要的答案?浏览带标签的其他问题问自己的问题