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.程序结果

相关推荐
燃于AC之乐20 小时前
我的算法修炼之路--4 ———我和算法的爱恨情仇
算法·前缀和·贪心算法·背包问题·洛谷
MM_MS1 天前
Halcon变量控制类型、数据类型转换、字符串格式化、元组操作
开发语言·人工智能·深度学习·算法·目标检测·计算机视觉·视觉检测
独自破碎E1 天前
【二分法】寻找峰值
算法
mit6.8241 天前
位运算|拆分贪心
算法
ghie90901 天前
基于MATLAB的TLBO算法优化实现与改进
开发语言·算法·matlab
恋爱绝缘体11 天前
2020重学C++重构你的C++知识体系
java·开发语言·c++·算法·junit
wuk9981 天前
VSC优化算法MATLAB实现
开发语言·算法·matlab
Z1Jxxx1 天前
加密算法加密算法
开发语言·c++·算法
乌萨奇也要立志学C++1 天前
【洛谷】递归初阶 三道经典递归算法题(汉诺塔 / 占卜 DIY/FBI 树)详解
数据结构·c++·算法
vyuvyucd1 天前
C++引用:高效编程的别名利器
算法