南海トラフ地震はいつ起きるのか
過去データから予測してみる事としました。
解説動画はこちら
解説動画はこちら
南海トラフ地震とは
駿河湾から日向灘沖にかけてのプレート境界を震源域として
概ね100~150年間隔で繰り返し発生してきた大規模地震
静岡県から宮崎県にかけての一部では震度7となる可能性があります。
過去の発生年
過去の発生年
発生年 名称
1946年 昭和南海地震
1944年 昭和東南海地震
1854年 安政南海地震
1707年 宝永地震
1605年 慶長地震
1498年 明応地震
1361年 正平南海地震
地震の発生確率の計算方法
最近の調査ではBPT分布というものを
用いた予測が基本になっています。
BPT分布
(Brownian Passage Time:ブラウン通過時間)
地震の発生間隔をモデル化する確率分布
地震の発生間隔をモデル化する確率分布
確率的に「平均的な間隔」の周辺で起こるが
バラつきがあるというモデル
ポアソン分布は発生確率が常に一定(ランダム)とする一方
BPT分布は時間経過による「成熟度」を考慮したものです。
BPT分布の基本式
BPT分布の確率密度関数 𝑓(𝑡) は、以下の式で表されます。

条件付き確率の考え方
「前回の地震から 𝑡 年経過した時点で
今後 Δ𝑡 年以内に地震が発生する確率」
今後 Δ𝑡 年以内に地震が発生する確率」
𝑃(𝑡,Δ𝑡) は、以下の式で計算します。

コード上では下記が確率計算部分になります。
prob = (f_future - f_t) / (1 - f_t)
分子:(f_future - f_t)
「現在からXX年の期間内に地震が発生する」という確率
分母:(1 - f_t)
「現在で、まだ地震が起きていない」という確率
BPTモデルでは時間が経つほど 𝐹(𝑡) が大きくなるため
分母はどんどん小さくなっていき、確率が高まります。
分母はどんどん小さくなっていき、確率が高まります。
Pythonで地震確率をシミュレーションする
あらかじめことわりますが
あらかじめことわりますが
政府予測とは異なります!!!!
予測条件
平均再来間隔 (南海トラフの直近データ 1361 ~ 1946)
97.5
ばらつき係数 (地震調査委員会採用値)
0.24
前回の発生年 (昭和南海地震)
1946
今後30年間の地震発生確率を求めるコードは以下です。
import numpy as np
from scipy.stats import norm
def bpt_cdf_30(t, mu, alpha, delta_t=30):
"""
BPT分布に基づき、今後 delta_t 年以内の地震発生確率を計算する
Parameters:
t: 前回からの経過年数
mu: 平均再来間隔
alpha: ばらつき係数
delta_t: 評価期間(デフォルトは30年)
"""
if t <= 0:
return 0.0
# 現在までの間に、既に地震が起きているはずだった累積確率
inv_alpha_sq = 2 / (alpha**2)
term1_t = norm.cdf((t / mu - 1) / (alpha * np.sqrt(t / mu)))
term2_t = np.exp(inv_alpha_sq) * norm.cdf(-(t / mu + 1) / (alpha * np.sqrt(t / mu)))
f_t = term1_t + term2_t
# delta_t 年後までの間に、地震が起きる累積確率
t_future = t + delta_t
term1_f = norm.cdf((t_future / mu - 1) / (alpha * np.sqrt(t_future / mu)))
term2_f = np.exp(inv_alpha_sq) * norm.cdf(-(t_future / mu + 1) / (alpha * np.sqrt(t_future / mu)))
f_future = term1_f + term2_f
if f_t >= 1.0:
return 1.0
prob = (f_future - f_t) / (1 - f_t)
return max(0.0, min(prob, 1.0))
mu = 97.5 # 平均再来間隔 (南海トラフの直近データ 1361 ~ 1946)
alpha = 0.24 # ばらつき係数 (地震調査委員会採用値)
last_event = 1946 # 前回の発生年 (昭和南海地震)
target_year = 2026
t = target_year - last_event
# 30年分を予測
for delta_t in range(1, 31):
prob = bpt_cdf_30(t, mu, alpha, delta_t)
print(f"今後 {delta_t} 年以内の発生確率: {prob:.2%}")
今後30年間の発生確率は
ぜひ動画を見てみてください。
まとめ
地震の発生確率は確率分布をもとに
予測が行われています。
政府予測では
地震の発生確率は確率分布をもとに
予測が行われています。
政府予測では
今後、30年の間に 60%~90%程度以上の確率で
南海トラフ地震来るという予測です
絶対は無いけど、明日来るかもしれない
いつ来ても良いように備えておきましょう!!!
それでは

コメントする