繁体   English   中英

关于干湿热浪

[英]About dry and humid heatwaves

如果有人可以协助编写代码来计算“相对湿度 > 66% 和 < 33% 的特定热浪天数”,我将不胜感激。 (然而,热浪事件被定义为温度分别至少连续三天超过每日平均温度的 90% 的事件)。

好的,这是一个解决方案

# temperature percentile
cdo timpctl,90 infile -timmin infile -timmax t2m.nc t2m_pcen90.nc

# mask the temperature
cdo ge t2m.nc t2m_pcen90.nc mask.nc

# Need to make sure we have three consecutive days
cdo --timestat_date last runmean,3 mask.nc mask3.nc
cdo gec,1 mask3.nc heatwave_T.nc 

# Now filter for dry heatwaves, assuming RH is %, change X if fraction
cdo lec,33 rh.nc rhdry.nc
cdo mul heatwave_T.nc rhdry.nc heatwave_dry.nc 

# and same for wet
cdo gec,66 rh.nc rhwet.nc
cdo mul heatwave_T.nc rhwet.nc heatwave_wet.nc 

根据您的定义,当您处于热浪中时,每个文件中的每个位置/时间都应该有一个 1。 当然,元数据适用于 T2m 而不是索引,如果需要,请使用 NCO 进行更改。 我有几个视频指南可以帮助解决这个问题,关键的一个是关于掩蔽的(虽然它不包括运行平均值部分)。 另请注意,仅在当天应用 RH 标准(没有运行平均值),但这就是您在问题中编写定义的方式。 如果需要,复制运行平均值部分。

ps:一般来说,最好表明您自己尝试过解决方案,在询问之前,SO 准则是问题具有调试性质,或者可以是单行请求,但不是像“写给我”这样的编码请求执行 X 或 Y 的代码”-我认为这就是您被否决的原因。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM