Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(type_wrf_mvg), | intent(in) | :: | self | |||
real(kind=real64), | intent(in) | :: | h |
module function calculate_wrf_mvg_derivative(self, h) result(dvw_dh) implicit none class(type_wrf_mvg), intent(in) :: self real(real64), intent(in) :: h real(real64) :: dvw_dh if (h < self%h_crit) then dvw_dh = (self%theta_s - self%theta_r) * & self%alpha1**self%n1 * self%m1 * self%n1 * (-h)**(self%n1 - 1.0d0) * & (1.0d0 + (-self%alpha1 * h)**self%n1)**(-self%m1 - 1.0d0) else dvw_dh = 0.0d0 end if end function calculate_wrf_mvg_derivative