Function to calculate the derivative of drawdown wrt the log of time
log_derivative(t, s, d = 2, method = "central", return.pos = T, log = T)
| t | vector with time values |
|---|---|
| s | vector with drawdown values |
| d | Derivative parameter. if method equals to bourdet then d is equal to the number of adjacent values used in the derivative calculation. If method is equal to spline then d is equal to the number of knots used in the interpolation of the drawdown data. In this case a value of d=20 to d=30 is recommended. If method is equal to spane then d is equal to the number of points used in the linear regression approach. |
| method | Method to calculate the derivative (central, horner, bourdet and spline) |
| return.pos | Logical flag to return only the positive values of the log-derivative (default = TRUE) |
| log | Logical flag to indicate that natural logarithm (a log to the base e) is used in the derivative calculation (default = TRUE). Logarithm to the base 10 is used if FALSE. |
This function returns a list with components named as x and y that contains the log_derivative y evaluated at specific points x.
Other log_derivative functions: log_derivative_bourdet,
log_derivative_central,
log_derivative_horner,
log_derivative_kernelreg,
log_derivative_locpol,
log_derivative_lokern,
log_derivative_lpridge,
log_derivative_smoothspline,
log_derivative_spane,
log_derivative_spline
# Load test data data(theis) # calculate derrivative of s wrt to logt using central differences logd.central <- log_derivative(theis$t, theis$s) # calculate derrivative of s wrt to logt using Horner method logd.horner <- log_derivative(theis$t, theis$s, method = "horner") # calculate derrivative of s wrt to logt using Bourdet method logd.bourdet <- log_derivative(theis$t, theis$s, method = "bourdet") # plot results plot(logd.central$x, logd.central$y, type = "p")