見出し画像

関東エリアでの「雷三日」とSSI(1)

『雷三日』という言葉通り、2024年6月2日から3日間にわたり雷が続いた関東エリア。今回は、この事例を理解するため、総観場の気象状況と雷の発生状況を概観します。後半では、計算に時間を要するSSI(ショワルター安定指数)を高速化する近似手法とその精度を解説します。次回以降に、雷発生域と数値予報資料のSSI等との対応関係を考察していく予定です。


寒冷低気圧の動向と関東付近の気象状況の概要

500、700、850 hPa 面の各高層天気図を、6月1日09時から5日21時まで、12時間ごとにループさせた図を図1から図3に示します。これらの図は気象庁のHPから取得したものです。

図1 500hPa面高層天気図 2024年6月1日から5日(12時間毎)
気象庁作成の図をトリミングして作成
実線:等高度線(m:太線5700m,60m毎)、破線:気温(°C)

まず図1をご覧ください。500 hPa面では、6月1日に中国東北部を南東へ進む、マイナス18度以下の寒気を伴った寒冷低気圧が見られ、2日には日本海を東南東へ進みました。これに伴い、関東では2日に気温が低下し、マイナス12度以下となりました。夜にはマイナス15度線が一部関東南部まで南下しています。3日から4日前半にかけて、寒冷低気圧は秋田県から青森県付近に停滞し、関東の気温はマイナス15度前後で寒気の入った状況が続きました。4日夜には寒冷渦は不明瞭になり、その位相は北海道東部へ移動しました。この間、関東付近でもシャープなトラフが通過しました。5日になると、トラフは東の海上に抜け、関東では気温が上昇しました。

500 hPa面では、北日本を通過した上空の寒冷低気圧の動きが遅かったため、関東地方でも気温の低い状態が長引いたと考えられます。

700hPa面の低気圧と関東付近の風速

図2  700hPa面高層天気図 2024年6月1日から5日(12時間毎)
気象庁作成の図をトリミングして作成
実線:等高度線(m:太線3000m,60m毎)、破線:気温(°C)

700hPa面の気温変化傾向は500hPa面とほぼ同じですが、3日頃からの低気圧の動向が異なっています(図2参照)。3日は低気圧が山形県付近の西方海上で一時停滞した後、500hPa面とは異なり4日は低気圧が東北地方を東進しています。さらに図2では低気圧として解析されていませんが、別の低気圧の循環が3日夜に九州から東日本太平洋側にかけてみられ、4日には前述の低気圧と一体化したようにも解析できそうです。

舘野における700 hPa面の風は、2日には西寄りでしたが、3日から4日にかけて風向が変化し、風速は10ノット程度かそれ以下となっています。このことから、3日から4日にかけて対流雲の動きはそれほど速くなかったと考えられます。

関東付近での850hPa面の湿りと地上天気図

図3  850hPa面高層天気図 2024年6月1日から5日(12時間毎)
気象庁作成の図をトリミングして作成
実線:等高度線(m:太線1500m,60m毎)、破線:気温(°C)

図3では、850 hPa面における湿域がドットで示されています。2日には東北地方から東日本にかけて広い範囲で湿っており、3日には東北地方を南東へ進んだ低気圧周辺の湿った空気が午後に関東地方へ流れ込んでいる様子が見られます。4日には舘野で北北東の風が吹き、2日や3日より乾燥していますが、露点差は2〜3度程度で、午後を中心に湿った状態が続いていました。

下層の湿りの拡大は、既に発生した対流雲が移動してきた結果である場合もあれば、移流によって湿り域が拡大し、これから対流雲が発生しやすい状況を作り出している場合もあります。湿りが対流雲の結果か、発生要因かを見極めることが重要です。

図4 速報天気図 2024年6月2日から4日(6時間毎)

図4に2日から4日にかけての速報天気図を示します。日本海から三陸沖へ進んだ低気圧は、700hPa面の低気圧の位置と概ね一致して解析されています。そして、関東付近では気圧の傾きが小さい状況が続いていました。

以上をまとめると、2日から4日の関東付近の気象は、上空の寒冷低気圧の影響により大気の状態が不安定で、中層風の弱さが対流雲の動きを抑制することが想定されます。また、東北地方を通過した低気圧に伴う下層の湿った空気が関東エリアに流れ込んだこともこの不安定を強めた可能性があります。地上でも総観場の風が強くはないことから、対流雲発生に影響を与える下層収束は地域特性やメソスケールの現象の影響が大きい状況と言えそうです。

雷の実況データ

雷の実況データは、気象庁HPにある雷監視システムのデータを利用します。図5では、3時間ごとに色分けした落雷と雲間放電の位置を日ごとに動画化しています。

図5 2024年6月2から4日の各日において、
気象庁で観測した落雷(・)と雲間放電(X)を3時間毎に色を変えプロット

2日は東北から近畿地方にかけて広範囲で発雷が観測され、関東付近では特に12時から18時にかけて活発でした。3日と4日には発雷範囲が縮小し、関東地方では主に15時から21時にかけて雷が観測されました。

SSIの近似計算

この章はプログラムに関心のある方に向けた技術的な解説です。

SSIを計算するための関数がMetPyでも提供されています。metpy.calc.showalter_index(pressure, temperature, dewpoint)を使えばSSIを手軽に計算できます。しかし高度が850hPaと500hPaに固定されているため、冬季に利用する700hPaの場合には対応できません。

この制約を解消し、任意の高度でSSIを計算できるコードを以下に示します。舘野の2024年6月3日9時の高層ゾンデ観測のSSIを計算しています。

### SSIの計算
from metpy.units import units
import metpy.calc as mpcalc

## SSI計算に利用する上層の気温の高度(hPa)と下層の気温などの高度(hPa)の指定
# 通常のSSIなら、500と850を指定
up_alt = 500.0
low_alt = 850.0

# 下層の気温(Celsius)と露点温度(Celsius)の指定
low_tmp = 8.8
low_td = 8.1

# 上層の気温(CElsius)の指定
up_tmp = -14.7

# 要注意 wa_p = [low_alt, up_alt] * units.hPaとすると、
#    parcel_profile()で値が1つの配列とするバグがあり、これを回避する必要あり。
wa_p = [low_alt, up_alt, up_alt - 1.0] * units.hPa
wtmp = mpcalc.parcel_profile(wa_p, low_tmp * units.degC, low_td * units.degC)
ssi = up_tmp - wtmp.to('degC')[1].m

print(ssi)

## MetPyのSSIを計算してくれる関数を利用し上記の方法と一致しているか確認する
#   SSIの計算に不要な値はダミーの値を入れいています。
ssi_f = mpcalc.showalter_index(wa_p, [low_tmp,up_tmp,up_tmp] * units.degC, [low_td, low_td,low_td]* units.degC)
print(ssi_f)

## 上記の出力結果は次のとおり
# 2.5155205038469894
# [2.515520516197956] delta_degree_Celsius

上記の計算方法では、数値予報による多数の格子でSSIを計算させると、かなりの計算時間がかかります。そこで高速化のために、湿度が低い場合の誤差が大きくなることを許容し、850hPaの気塊を500hPa面まで持ち上げた時には飽和していると仮定してSSIを求めることにしました。下層の湿度が低い場合は安定度が高くなるため、SSIの値を利用することは普段ないと考えた計算方法です。

  1.  事前に、500hPa面の飽和相当温位と気温の対応関係を計算する

  2.  850hPaの気温と露点温度から、相当温位気塊(θe85)を求める

  3.  上記の仮定から500hPa面の気温は、飽和相当温位の値がθe85と一致することから①の対応関係から決める

  4.  500hPa面の気温を、③で求めた気温から引き算してSSIの近似値を得る

上記の高速化で私のPCでは約1500倍の高速化できました。このコードのサンプルを示します。以下では、この近似したSSIをeSSIとして示します。

import metpy.calc as mpcalc

## 500hPa面の飽和相当温位と気温の対応関係を予め計算する
# 500hPaの気温(-70度から40度)を0.05度毎に、これに対応する飽和相当温位の値を求める
tmpR = np.arange(-70, 40, 0.05).tolist()
eptR = []
for tmp in tmpR:
    ept = mpcalc.saturation_equivalent_potential_temperature(precUp, tmp * units.degC)
    eptR.append(ept.m)

## 850hPa面から持ち上げた気塊は500hPa面では飽和しているものと仮定し、
# 飽和相当温位が850hPaの相当温位と一致することを利用して500hPa面の気温を計算し、
# SSIの近似値を算出
def getSSIKinji(ept850, tmp500):
    pTmp = np.interp(ept850, eptR, tmpR)
    ssik = tmp500 - pTmp
    return ssik

## 計算サンプル
# 850hPa面の相当温位(K)
e85 =[[ 350.0, 345.0, 340.0],
      [ 330.0, 325.0, 320.0]]
# 500hPa面の気温(Celsius)
t50 =[[  -9.0,  -6.0,  -3.0],
      [  -8.0,  -5.0,  -2.0]]
essi = getSSIKinji(e85,t50)

print(essi)

この近似での誤差特性を調べるために、850hPaの気温マイナス18度から21度の範囲で0.1度毎、湿度は1から100%の範囲で1%毎でSSIとeSSIの誤差を計算して、誤差分布(図6)を作成しました。

図6 eSSIの誤差分布
縦軸は850hPa面の気温、横軸は850hPa面の湿度(誤差最大は2.7)

湿度10%より低い場合は誤差が0.5以上となるが、このように下層が乾燥している場合、大気の安定度がよく通常は指数値の小さいデータを使うことから、誤差が少々大きくても影響はないでしょう。湿度が10%以上では誤差が±0.3以内に収まるため、実用上問題ないと考えられます。統計的に調査する場合は誤差の影響が出るおそれがありますが、天気図においてSSIの代わりにeSSIを利用して作図しても、値の小さな等値線を描く場合には影響は小さいと考えられます。

分布図としてどの程度ズレがあるか見てみましょう。図7では、2024年06月02日00Z初期のMSM予測(6時間後)におけるSSI(赤線)とeSSI(青線)の等値線の比較を示しています。0や-1の等値線はほとんどズレていませんが、6や12では多少のズレが見られます。予想天気図において大気の状態が不安定な地域を大まかに把握する場合には、通常3や4以下の等値線を見るため、この程度のズレは許容範囲と考えていいでしょう。

図7 SSIとeSSIの等値線
2024年06月02日00Z初期値のMSM FT:6における
SSI(赤実線)とeSSI(青実線)の等値線(-1,0,3,6,12)を表示

次回から

今回の記事はここまでとします。少し先になりますが次回以降に、LIDENとMSMの予想のeSSIと降水量などを重ねた図(下図)を作成し、考察を進める予定です。

参考図 MSM(2024年06月02日00Z初期値 FT:6)における
気圧(黒)、風、eSSI(青)、3時間降水量(カラー)、および落雷と雲間放電

この記事が気に入ったらサポートをしてみませんか?