Ya no necesitas indagar más por todo internet porque has llegado al sitio correcto, tenemos la solución que quieres encontrar sin complicarte.
Solución:
Desde [The ASCE Standardized Reference Evapotranspiration Equation]1
Dado que T es la temperatura en grados Celsius y RH es la humedad relativa:
Presión de vapor de saturación (es) =
0.6108 * exp(17.27 * T / (T + 237.3))
Presión de vapor real (ea) =
RH / 100 * es
Déficit de presión de vapor =
ea - es
Por qué esta es una medida significativa: “La tensión bajo la que se somete a un organismo para mantener el equilibrio del agua durante los cambios de temperatura se muestra mucho más claramente al observar el déficit de presión de vapor que al registrar la humedad relativa”. Anderson, DB 1936. Humedad relativa o déficit de presión de vapor. Ecología 17, núm. 2: 277–282.
De Dennis Hartman “Climatología Física Global” (p 350)
Dada la humedad relativa en porcentaje ($RH$) y la temperatura en Kelvin ($K$):
Primero, calcule la presión de vapor de saturación, $e_s$ en milibares (mb):
$$e_s= 6.11*expleft( fracLR_vleft(frac1273 – frac1Tright) right)$$
Donde $L$ es el calor latente de vaporización, $2.5times10^6text J kg^-1$, $R_v$ es la constante de gas para el vapor de agua ($461 text JK^-1 textkg^-1$.
Luego calcule el déficit de presión de vapor, $vpd$, que es la diferencia entre la presión de vapor de saturación y la presión de vapor real:
$$vpd = e_s*(100-RH)/100$$
Aquí hay dos funciones escritas en R que harán esto:
get.es <- function(temp)
es <- 6.11 * exp((2.5e6 / 461) * (1 / 273 - 1 / (273 + temp)))
return(es)
get.vpd <- function(rh, temp)
## calculate saturation vapor pressure
es <- get.es(temp)
## calculate vapor pressure deficit
vpd <- ((100 - rh) / 100) * es
return(vpd)
Y para probarlos, puede trazar la relación entre la temperatura y es (negro) y al 50 % de HR, por ejemplo (en rojo):
temp <- -30:30
plot(temp, get.es(temp), type = "l", xlab = "T", ylab = "es or vpd")
lines(temp, get.vpd(50, temp), col = "red")
Después de verificar la referencia, James sugirió:
Allen, RG, Pereira, LS, Raes, D, Smith, M (1998) Datos meteorológicos, Capítulo 3. En: Evapotranspiración de cultivos: pautas para calcular los requisitos de agua de los cultivos. Organización de las Naciones Unidas para la Alimentación y la Agricultura (FAO) Irrigation and Drainage Paper 56. Naciones Unidas, FAO, Roma, Italia. Disponible en http://www.fao.org/docrep/x0490e/x0490e07.htm#calculation%20procedures
Encontré que, en la referencia, es menos recomendable calcular la presión de vapor real (ea) usando la humedad relativa media (como la función get.ea)
# function suggested by James
# Calculate actual vapor pressure (ea)
get.ea <- function(rh, tmin, tmax)
esm <- get.esm(tmin, tmax)
ea <- (rh/100) * esm
return(ea)
según la referencia http://www.fao.org/docrep/x0490e/x0490e07.htm#calculation%20procedures, Eq. 17, c/u = [e°(Tmin) RHmax/100 + e°(Tmax) RHmin/100]/2, se recomienda derivar ea de la humedad relativa máxima y mínima en lugar de la humedad relativa media.
por lo tanto, la función obtener.ea se puede modificar de la siguiente manera.
# reference http://www.fao.org/docrep/x0490e/x0490e07.htm#calculation%20procedures, Eq. 17
# Calculate actual vapor pressure (ea)
# based on maximum and minimum relative humidity
get.ea <- function(rhmin, rhmax, tmin, tmax)
esmn <- get.esmn(tmin) # other fun same as James suggested
esmx <- get.esmx(tmax)
ea <- (esmn * rhmax/100 + esmx * rhmin/100) / 2
return(ea)
Salvo la modificación de obtener.ealas otras funciones son las mismas que sugirió James.
Recuerda algo, que te concedemos agregar una reseña .