MATLAB计算日尺度旱涝急转指数(Dry-wet abrupt alternation index,DWAAI)
1.日尺度旱涝急转指数(Dry-wet abrupt alternation index,DWAAI)
日尺度旱涝急转指数(Dry-wet abrupt alternation index,DWAAI)是一个用于描述在日尺度上旱涝急转现象的指数,能够综合反映旱涝急转事件的 “突发性” 以及旱涝状态的 “交替性”。
2.MATLAB代码
clc;close all;clear all;warning off;%清除变量
rand('seed', 100);
randn('seed', 100);
format long g;N = 2000; % 序列长度(示例)
P = max(0, 5+2*randn(N,1));% 合成“日降水”(mm),允许 0t = (1:numel(P))';%% DWAAI(日尺度旱涝急转指数)
% 通用实现(兼容多文献改进思路):用前后窗强度差 * 速度(/Δt)
% 其中“强度”可选 z 分数或 SWAP;急转点可用强度序列的一阶差分峰值近似。
dry_win = 15;
wet_win = 15;
std_method = 'swap'; % 推荐:'swap'(鲁棒表征湿润/干燥强度)
minJump = 0.8; % 急转强度阈值(可结合你区的经验调)
DWAAI = calc_DWAAI(P, SWAP, dry_win, wet_win, std_method, minJump);figure;
plot(t, DWAAI, 'LineWidth',1.1);
grid on;
xlabel('t');
ylabel('DWAAI');
title(sprintf('DWAAI(日尺度,dry\\_win=%d, wet\\_win=%d, method=%s)', dry_win, wet_win, std_method));
3.程序结果