MATLAB计算标准径流指数(Standard Runoff Index,SRI)

1.标准径流指数(Standard Runoff Index,SRI)

标准径流指数(Standard Runoff Index,SRI)是一种基于流域实测或模拟径流数据的干旱评估指标,核心思路是通过对径流序列进行标准化处理,量化流域水资源的丰缺程度,从而实现对干旱(尤其是水文干旱)的识别、监测与等级划分。它在水文干旱研究、水资源管理、农业灌溉调度及生态保护等领域具有重要应用价值。

2.MATLAB代码

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),允许 0
Q = max(0, 20+5*randn(N,1)); % 合成"日径流",允许 0
t = (1:numel(P))';

%% 2.SRI(标准径流指数)

% SPI/SRI 时间尺度(窗口长度)。如果是"月尺度"数据,常见取 1/3/6/12;
% 如果是"日尺度"数据,等价于滑动天数(如 30/90/180/365)。
scale_sri = 30;    % 用于 SRI(对 Q 的滑动累积长度)

SRI = calc_SRI(Q, scale_sri);

figure;
plot(t, SRI, 'LineWidth',1.1); 
grid on; 
yline([ -2 -1 0 1 2],'--');
xlabel('t'); 
ylabel('SRI');
title(sprintf('SRI(窗口=%d)',scale_sri)); 

3.程序结果

相关推荐
凌波粒2 分钟前
LeetCode--53. 最大子序和(贪心算法)
算法·leetcode·贪心算法
Hesionberger11 分钟前
快速求解完全平方数的最少数量
开发语言·数据结构·python·算法·leetcode·c#
c2385611 分钟前
《序列 DP:C++ 中的“最长”套路与编辑距离》
c++·算法·动态规划
aqiu11111113 分钟前
【算法日记 19】LeetCode 1. 两数之和:梦开始的地方,哈希表的降维打击
算法·leetcode·职场和发展
CS创新实验室10 小时前
算法、齿轮与硅基大脑:数值计算发展简史
人工智能·算法·数值计算
海石11 小时前
1563分的简单题,可能就简单在能被暴力AC
算法·leetcode
海石11 小时前
1400分的dp汗流浃背之【交替子数组计数】
算法·leetcode
奋发向前wcx11 小时前
P2590 树的统计 题目解析
数据结构·算法·深度优先
imbackneverdie12 小时前
AI4S不止于分子药物:以MedPeer为代表的科研基建打开产业新增量
大数据·人工智能·算法·aigc·科研·学术·ai 4s
2zcode13 小时前
免费开源项目文档:基于MATLAB卷积神经网络的口罩佩戴检测系统
开发语言·matlab·cnn