# regIDF: Determine coefficients of IDF curves by means... In dazamora/IDFtool: Probability Density Function analysis and compute rainfall Intensity-Duration-Frequency curves

## Description

An Intensity-Duration-Frequency curve (IDF Curve) is a graphical representation of the probability that a given average rainfall intensity will occur. This function allows compute the coefficients of an equation that represents IDF per each return period:

I(D) = A/(B+D)^C

where I are intensities [mm/h] per each return periods, D is time duration [min] and A, B and C are coefficients. The last are calibrated by the Levenberg-Marquardt algorithm (see `nls.lm`). Moreover, `regIDF` computes confidence and prediction intervals to calibrate equiations by means of `predFit` function (see investr package). Finally, this function assesses the performance of the equations by means of four metrics: roor mean square error (`rmse`), coefficient of determination (br2) multiplied by the slope of the regression line between sim and obs (`br2`), mean square error `mse` and information criteria `AIC` and `BIC`.

## Usage

 ```1 2 3``` ```regIDF(Intensity = ..., Periods = ..., Durations = ..., logaxe = ..., Plot = 34, Intervals = TRUE, Resolution = 300, SAVE = FALSE, Strategy = ..., M.fit = ..., Type = ..., name = ..., Station = ...) ```

## Arguments

 `Intensity:` a matrix with intensity values per specific time durations (by rows) and return `Periods` (by columns). To use this function, the smallest matrix dimension must be 3 rows and 1 column. `Periods:` a numeric vector with return periods. `Durations:` a numeric vector specifying a time duration of the `Intensity` in minutes. `logaxe:` a character to plot axis in log scale: x, y or both (xy). In other case used "". `Plot:` use (3) to plot IDF curves (`Durations` versus `Intensity`) for all return `Periods`. Use (4) to plot IDF curve for each return period with its confidence and prediction intervals. Or use both numbers to get these graphs. If you use other number the graphs will not appear. `Intervals:` a logical value specifying whether confidence and prediction intervals will be computed. `Resolution:` a number to determine resolution that the plot function will used to save graphs. It can has two options: 300 and 600 ppi. See `resoPLOT`. `SAVE:` a logical value. TRUE will save `Plot` FALSE just will show `Plot` it. `Strategy:` a numeric vector used to identify Strategy when it is used to `SAVE`. `M.fit:` a character specifying a name or number of pluviographic station where data were measured, and it is used to save results. `Type:` a character specifying the name of distribution function that it will be employed: exponencial, gamma, gev, gumbel, log.normal3, normal, log.pearson3 and wakeby (see `selecDIST`). `name:` a vector of characters used to save graphs. It allows differentiation strategy to compute IDF curves. `Station:` a character specifying a name or number of pluviographic station where data were measured, and it is used to save results.

## Value

A list of

• `Predict` a numeric matrix with the intensities values of the IDF equation calibrated. Durations by rows and return periods by columns.

• `Coefficients` a numeric matrix with values of the coefficients A, B and C for each return period.

• `test.fit.reg` a numeric matrix with perfomance metrics (rmse, mse, br2, AIC and BIC by each equation.

• `Prediction.Int` a list with matrices. Each matrix has the lower and upper limit of the prediction interval per each specific time duration. Two columns by n durations.

• `Confidence.Int` a list with matrices. Each matrix has the lower and upper limit of the confidence interval per each specific time duration. Two columns by n durations.

## Author(s)

David Zamora <[email protected]> Water Resources Engineering Research Group - GIREH

## Examples

 ```1 2 3 4 5 6``` ```# Meteorology station in the Airport Farfan in Tulua, Colombia. data(IDFdata) TEST.out <- regIDF(Intensity = IDFdata, Periods = c(2,3,5,10,25,50,100), Durations = c(5,10,15,20,30,60,120,360), logaxe = "", Plot = 34, Resolution = 300, SAVE = FALSE, Strategy = 1, M.fit = "lmoments", Type = "gumbel", name = "Test", Station = "2601") ```

dazamora/IDFtool documentation built on March 20, 2018, 8:56 p.m.