国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

整層水汽通量和整層水汽通量散度計(jì)算及python繪圖

這篇具有很好參考價(jià)值的文章主要介紹了整層水汽通量和整層水汽通量散度計(jì)算及python繪圖。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

整層水汽通量和整層水汽通量散度計(jì)算及python繪圖
一、公式推導(dǎo)
1、整層水汽通量:
(1)單層水汽通量:
在P坐標(biāo)下,
單層水汽通量 = q·v/g
q的單位為kg/kg,v的單位為m/s。對(duì)于重力加速度g的單位要進(jìn)行換算:
整層水汽通量和整層水汽通量散度計(jì)算及python繪圖
也就是說,重力加速度g的單位是10**-2·hPa·m**2/kg。
最終,單層水汽通量的單位為kg/m?hPa?s。

(2)整層水汽通量:
對(duì)單層水汽通量進(jìn)行積分,采用np.trapz。
最終,整層水汽通量的單位為kg/m·s。

2、整層水汽通量散度
(1)單層水汽通量散度:
整層水汽通量和整層水汽通量散度計(jì)算及python繪圖
采用的是mpcalc.divergence。
即:metpy.calc.divergence(u, v, *, dx=None, dy=None, x_dim=- 1, y_dim=- 2)計(jì)算矢量的水平散度。
單層水汽通量散度單位為kg/m**2?hPa?s

(2)整層水汽通量散度:
對(duì)單層水汽通量散度進(jìn)行積分,依然使用np.trapz。
為了顯示好看,可將最終值提取10**-5或者10**-6次方。
因此整層水汽通量散度的最終單位為:10-5kg/(m**2·s)

二、程序文章來源地址http://www.zghlxwxcb.cn/news/detail-432039.html

import matplotlib.pyplot as plt
import matplotlib
import xarray as xr
import cartopy.crs as ccrs
import cartopy.feature as cf
import cartopy.io.shapereader as shpreader
import cartopy.mpl.ticker as cticker  
from cartopy.mpl.ticker import LongitudeFormatter,LatitudeFormatter
from cartopy.mpl.gridliner import LONGITUDE_FORMATTER, LATITUDE_FORMATTER
import matplotlib.ticker as mticker
from datetime import datetime
#科學(xué)計(jì)算的包
from metpy.units import units      #里面是單位            
import metpy.constants as constants  #里面是常數(shù)
import metpy.calc as mpcalc          #里面有各種計(jì)算函數(shù)
plt.rcParams['font.sans-serif'] = ['SimHei']                                    # 用黑體字體顯示中文
plt.rcParams['axes.unicode_minus']=False                                        # 正常顯示負(fù)號(hào)位置
matplotlib.get_cachedir()

# Read Data
filename = r'D:\data\physic\201808_physic.nc'
f=xr.open_dataset(filename)

time = f.time[18:21]       # 根據(jù)不同的個(gè)例選取時(shí)間
lev = f.level[23:]         # 讀取氣壓層,單位為mb,即hPa,一維的14.
lat = f.latitude           # 讀取緯度,一維的21
lon = f.longitude          # 讀取經(jīng)度,一維的41

for i in range(18,21):
    u = f.u[i,23:,:,:]         # U風(fēng)分量,單位為m/s
    v = f.v[i,23:,:,:]         # V風(fēng)分量,單位為m/s
    q = f.q[i,23:,:,:]         # 讀取比濕,單位為kg/kg
# # # 計(jì)算單層水汽通量和水汽通量散度
    qv_u = u*q/(constants.g*10**-2)                            # g的單位為m/s2,換算為N/kg,再換算為10-2hPa·m2/kg,最終單層水汽通量的單位是kg/m?hPa?s
    qv_v = v*q/(constants.g*10**-2)                            # 計(jì)算q*v/g,單位是kg/m?hPa?s
    dx, dy = mpcalc.lat_lon_grid_deltas(lon, lat)              # 將經(jīng)緯度轉(zhuǎn)換為格點(diǎn)距離

    div_qv = np.zeros((lev.shape[0],lat.shape[0],lon.shape[0]))
    for j in range(lev.shape[0]):
        div_qv[j] = mpcalc.divergence(u = qv_u[j],v = qv_v[j],dx = dx ,dy = dy)   # 單位是kg/m2?hPa?s
        
# # # 計(jì)算整層水汽通量散度

    total_div_qv = np.trapz(div_qv, lev, axis=0)*10**5    #單位為10-5kg/(m**2*s)

# # # 計(jì)算整層水汽通量
    total_q_u = np.trapz(qv_u,lev,axis=0)         #將單位kg/(m*s)
    total_q_v = np.trapz(qv_v,lev,axis=0)
    a = np.sqrt(total_q_u * total_q_u + total_q_v * total_q_v)


#  #  #  繪圖
levs = np.arange(-1, 1+0.1, 0.1)
fig = plt.figure(figsize=(12,9))
ax = fig.add_axes([1,0,1,1],projection=ccrs.PlateCarree())
ax.set_xticks(np.arange(114, 124, 1), crs=ccrs.PlateCarree())    #x刻度值
ax.set_yticks(np.arange(34, 39, 0.5), crs=ccrs.PlateCarree())    #y刻度值
ax.tick_params(axis='both', which='major', labelsize=15)         #刻度修飾命令
ax.set_extent([114,124,34,39],crs = ccrs.PlateCarree())          #繪圖范圍限制,投影方式為ccrs.PlateCarree()
#ax.coastlines('50m', linewidth=0.8)


# 繪制水汽通量散度的陰影圖,cmap顏色映射表。
mfc_contourf = ax.contourf(lon, lat, 
                           total_div_qv,
                           cmap='seismic', 
                           levels=levs,
                           extend='both', transform=ccrs.PlateCarree())


# 繪制水汽通量的箭頭圖
h1 = ax.quiver(lon[::2],lat[::2],total_q_u[::2,::2],total_q_v[::2,::2],     #X,Y,U,V 確定位置和對(duì)應(yīng)的風(fēng)速
                width = 0.002, #箭桿箭身寬度  
                scale = 700, # 箭桿長度,參數(shù)scale越小箭頭越長
                pivot = 'tail'#箭頭的其實(shí)位置,這里表示從點(diǎn)起,還有點(diǎn)在中心的‘mid’
              )
# 說明箭軸長度與風(fēng)速的對(duì)應(yīng)關(guān)系
ax.quiverkey(h1,                      #傳入quiver句柄
              X= 0.1, Y = -0.07,       #確定 label 所在位置,都限制在[0,1]之間
              U = 20,                 #參考箭頭長度 表示20。
              angle = 0,              #參考箭頭擺放角度。默認(rèn)為0,即水平擺放
             label='20m/s',           #箭頭的補(bǔ)充:label的內(nèi)容  +
             labelpos='E',            #label在參考箭頭的哪個(gè)方向; S表示南邊
             color = 'k',labelcolor = 'k', #箭頭顏色 + label的顏色
             )


# 繪制水汽通量的等值線
ct=ax.contour(lon,lat,a,8,colors='k',linewidths=1,levels=range(0,28,2))
# 標(biāo)記ct每根線條的數(shù)值
ax.clabel(ct,inline=True,fontsize=10,fmt='%.0f')                         

# 繪制山東省界
province = shpreader.Reader(r'D:\shp\Shandong-city-2020\Shandong-city-2020.shp')
ax.add_geometries(province.geometries(), crs=ccrs.PlateCarree(), linewidths=0.5,edgecolor='k',facecolor='none')
ax.add_feature

# 圖例,顏色與數(shù)值的對(duì)應(yīng)關(guān)系。orientation:colorbar擺放的橫豎位置。cax:colorbar放在指定位置,最高優(yōu)先級(jí)。
position = fig.add_axes([ax.get_position().x0,
                         ax.get_position().y0-0.08,
                         ax.get_position().width,
                         0.02])
cb = fig.colorbar(mfc_contourf, orientation='horizontal', cax=position)
#cb.set_label('g/(m**2*s)', fontsize=12)
#fig.savefig(r'D:\py_pic\整層水汽通量和整層水汽通量散度圖.jpg', bbox_inches = 'tight')

到了這里,關(guān)于整層水汽通量和整層水汽通量散度計(jì)算及python繪圖的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 相對(duì)熵與KL散度在計(jì)算機(jī)視覺中的應(yīng)用

    計(jì)算機(jī)視覺是人工智能領(lǐng)域的一個(gè)重要分支,涉及到圖像處理、視頻處理、圖形識(shí)別等多個(gè)方面。隨著數(shù)據(jù)規(guī)模的不斷增加,計(jì)算機(jī)視覺中的算法也不斷發(fā)展,不斷拓展。相對(duì)熵和KL散度在計(jì)算機(jī)視覺中具有重要的應(yīng)用價(jià)值,可以幫助我們解決許多問題。 在本文中,我們將從

    2024年01月22日
    瀏覽(19)
  • 字符串和整型轉(zhuǎn)換的那些事兒

    總的來說,有兩種思路。 這種想法非常局限,是直接使用sprintf(),怎么改進(jìn)呢?用循環(huán)。 這個(gè)循環(huán)的方式非常巧妙,利用strlen()作為不斷增加的變化量,而當(dāng)str賦初值都是0的時(shí)候,這些零對(duì)于字符串來說,相當(dāng)于\\0,那么此時(shí)strlen檢測(cè)出來的數(shù)量必然是0,這是一種需要記住

    2024年01月17日
    瀏覽(24)
  • Java 字節(jié)數(shù)組(byte[])和整型(int)的相互轉(zhuǎn)換

    ??????恰巧碰到了字節(jié)數(shù)組和整型的轉(zhuǎn)換問題,特在此總結(jié)一下。將 int 按照小端法映射到 byte[] 中。即最低 8 位放在 byte[0] 中,依次類推。 ??????這個(gè)實(shí)現(xiàn)起來比較簡(jiǎn)單,先保存最低的 8 位到 byte 數(shù)組中,然后不斷的右移 8 位,每次保存低 8 位數(shù)據(jù)即可,參考代碼:(

    2023年04月12日
    瀏覽(100)
  • 如何使用MATLAB處理渦度通量數(shù)據(jù)

    如何使用MATLAB處理渦度通量數(shù)據(jù)

    MATLAB MATLAB是美國MathWorks公司出品的商業(yè)數(shù)學(xué)軟件,用于數(shù)據(jù)分析、無線通信、深度學(xué)習(xí)、圖像處理與計(jì)算機(jī)視覺、信號(hào)處理、量化金融與風(fēng)險(xiǎn)管理、機(jī)器人,控制系統(tǒng)等領(lǐng)域。 MATLAB是matrixlaboratory兩個(gè)詞的組合,意為矩陣工廠(矩陣實(shí)驗(yàn)室),軟件主要面對(duì)科學(xué)計(jì)算、可視化

    2024年02月09日
    瀏覽(19)
  • UNIAPP中IOS和安卓應(yīng)用熱更新和整包更新app的方法

    UNIAPP中IOS和安卓應(yīng)用熱更新和整包更新app的方法

    公司有一個(gè)項(xiàng)目《配送APP》是用uniapp開發(fā)的,用于公司幾百號(hào)騎士員工使用,功能已經(jīng)很完備,具有分配配送任務(wù),接單,取餐,完成,打卡等功能,用得一直很好,但唯一一個(gè)缺點(diǎn)是,當(dāng)APP功能上有升級(jí)時(shí)需要通知全體騎手手動(dòng)把舊版本卸載了,再手工下載新版本安裝,更

    2023年04月08日
    瀏覽(15)
  • 【Python/繪圖】python繪圖

    【Python/繪圖】python繪圖

    1.1、基礎(chǔ)柱形圖 效果 : 1.2、設(shè)置顏色、圖例、圖的標(biāo)題 坐標(biāo)軸對(duì)象可以設(shè)置要畫的內(nèi)容的標(biāo)簽,畫完后可以返回一個(gè)繪制內(nèi)容對(duì)象,繪制內(nèi)容對(duì)象可以畫出y標(biāo)簽的值。 效果如下 : 可以在坐標(biāo)軸畫圖的時(shí)候指定誤差棒。 這里是將誤差棒做成標(biāo)簽指示條了 1.3、柱狀堆積圖

    2024年02月07日
    瀏覽(9)
  • 14、KL散度

    14、KL散度

    KL 散度,是一個(gè)用來衡量?jī)蓚€(gè)概率分布的相似性的一個(gè)度量指標(biāo)。 現(xiàn)實(shí)世界里的任何觀察都可以看成表示成信息和數(shù)據(jù),一般來說,我們無法獲取數(shù)據(jù)的總體,我們只能拿到數(shù)據(jù)的部分樣本,根據(jù)數(shù)據(jù)的部分樣本,我們會(huì)對(duì)數(shù)據(jù)的整體做一個(gè)近似的估計(jì),而數(shù)據(jù)整體本身有一

    2023年04月18日
    瀏覽(18)
  • KL散度

    KL散度(Kullback-Leibler divergence),也稱為相對(duì)熵(relative entropy),是用來衡量?jī)蓚€(gè)概率分布之間差異的一種指標(biāo)。在機(jī)器學(xué)習(xí)中,KL散度常常用于度量?jī)蓚€(gè)概率分布之間的相似度或差異性。 具體來說,假設(shè)我們有兩個(gè)概率分布 p ( x ) p(x) p ( x ) 和 q ( x ) q(x) q ( x ) ,其中 p ( x

    2024年02月03日
    瀏覽(26)
  • 概率分布之間的散度(Divergence)

    Divergence between distributions.

    2024年02月08日
    瀏覽(12)
  • 【計(jì)算機(jī)圖形學(xué)基礎(chǔ)教程】MFC基本繪圖函數(shù)2

    【計(jì)算機(jī)圖形學(xué)基礎(chǔ)教程】MFC基本繪圖函數(shù)2

    CGdiObject類:GDI繪圖工具的基類 CBitmap類:封裝了GDI畫刷,可以選作設(shè)備上下文的當(dāng)前畫刷,用于填充圖形的內(nèi)部 CFont類:封裝了GDI字體,可以選作設(shè)備上下文的當(dāng)前字體 CPalette類:封裝了GDI調(diào)色板,提供應(yīng)用程序和顯示器之間的顏色接口 CPen類:封裝了GDI畫筆,可以選作設(shè)備

    2024年02月03日
    瀏覽(26)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包