matlab中标准化降水指数程序,标准化降水指数(SPI)计算程序

本文介绍了一个计算标准化降水指数(SPI)的MATLAB程序,主要参考了洪兴骏的论文,并提供了C++实现。程序包括读取降水数据、计算参数、求积分和gamma函数等功能,调用getSPI()函数即可获取指定年的SPI值。注意,该程序适用于合理数据,对于不合理数据可能产生意外结果。
摘要由CSDN通过智能技术生成

之前遇到的一个客户需求就是计算标准化降水指数(SPI)。

主要参考的论文为:洪兴骏,等 “标准化降水指数SPI分布函数的适用性研究”。原文可以很容易搜索到。

论文将计算方法其实写的比较清楚了,本文主要提供其C++实现。

头文件

//SPI_Calculator.h

#include

#include

#include

#include

#include

using namespace std;

#ifndef SPICALCULATOR_H

#define SPICALCULATOR_H

class SPI_Calculator{

public:

/**

path is the file that provides the data of rain fall

file format:

yearamount of precipitation

yearamount of precipitation

.

.

.

*/

SPI_Calculator(char* path);

/**

parameter is the year to get the SPI

return SPI

*/

double getSPI(int year);

double f_probabilityDensity(double x);

double f_gamma(double z, unsigned Ntermsx);

double integral(double a,double b);</

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值