Calculate_kr_KO_Base Module Function

module function Calculate_kr_KO_Base(alpha1, n1, l, h) result(kr)

Arguments

Type IntentOptional Attributes Name
real(kind=real64), intent(in) :: alpha1
real(kind=real64), intent(in) :: n1
real(kind=real64), intent(in) :: l
real(kind=real64), intent(in) :: h

Return Value real(kind=real64)


Called by

proc~~calculate_kr_ko_base~~CalledByGraph proc~calculate_kr_ko_base Calculate_kr_KO_Base interface~calculate_kr_ko_base Calculate_kr_KO_Base interface~calculate_kr_ko_base->proc~calculate_kr_ko_base proc~calculate_kr_base_impedance_ko Calculate_kr_Base_Impedance_KO proc~calculate_kr_base_impedance_ko->interface~calculate_kr_ko_base proc~calculate_kr_base_impedance_viscosity_ko Calculate_kr_Base_Impedance_Viscosity_KO proc~calculate_kr_base_impedance_viscosity_ko->interface~calculate_kr_ko_base proc~calculate_kr_base_ko Calculate_kr_Base_KO proc~calculate_kr_base_ko->interface~calculate_kr_ko_base proc~calculate_kr_base_viscosity_ko Calculate_kr_Base_Viscosity_KO proc~calculate_kr_base_viscosity_ko->interface~calculate_kr_ko_base interface~calculate_kr_base_impedance_ko Type_HCF_Base_Impedance_KO%Calculate_kr_Base_Impedance_KO interface~calculate_kr_base_impedance_ko->proc~calculate_kr_base_impedance_ko interface~calculate_kr_base_impedance_viscosity_ko Type_HCF_Base_Impedance_Viscosity_KO%Calculate_kr_Base_Impedance_Viscosity_KO interface~calculate_kr_base_impedance_viscosity_ko->proc~calculate_kr_base_impedance_viscosity_ko interface~calculate_kr_base_ko Type_HCF_Base_KO%Calculate_kr_Base_KO interface~calculate_kr_base_ko->proc~calculate_kr_base_ko interface~calculate_kr_base_viscosity_ko Type_HCF_Base_Viscosity_KO%Calculate_kr_Base_Viscosity_KO interface~calculate_kr_base_viscosity_ko->proc~calculate_kr_base_viscosity_ko proc~calculate_kflh_base_impedance_ko Calculate_Kflh_Base_Impedance_KO proc~calculate_kflh_base_impedance_ko->interface~calculate_kr_base_impedance_ko proc~calculate_kflh_base_impedance_viscosity_ko Calculate_Kflh_Base_Impedance_Viscosity_KO proc~calculate_kflh_base_impedance_viscosity_ko->interface~calculate_kr_base_impedance_viscosity_ko proc~calculate_kflh_base_ko Calculate_Kflh_Base_KO proc~calculate_kflh_base_ko->interface~calculate_kr_base_ko proc~calculate_kflh_base_viscosity_ko Calculate_Kflh_Base_Viscosity_KO proc~calculate_kflh_base_viscosity_ko->interface~calculate_kr_base_viscosity_ko interface~calculate_kflh_base_impedance_ko Type_HCF_Base_Impedance_KO%Calculate_Kflh_Base_Impedance_KO interface~calculate_kflh_base_impedance_ko->proc~calculate_kflh_base_impedance_ko interface~calculate_kflh_base_impedance_viscosity_ko Type_HCF_Base_Impedance_Viscosity_KO%Calculate_Kflh_Base_Impedance_Viscosity_KO interface~calculate_kflh_base_impedance_viscosity_ko->proc~calculate_kflh_base_impedance_viscosity_ko interface~calculate_kflh_base_ko Type_HCF_Base_KO%Calculate_Kflh_Base_KO interface~calculate_kflh_base_ko->proc~calculate_kflh_base_ko interface~calculate_kflh_base_viscosity_ko Type_HCF_Base_Viscosity_KO%Calculate_Kflh_Base_Viscosity_KO interface~calculate_kflh_base_viscosity_ko->proc~calculate_kflh_base_viscosity_ko proc~update_kflh_base_impedance_ko Update_Kflh_Base_Impedance_KO proc~update_kflh_base_impedance_ko->interface~calculate_kflh_base_impedance_ko proc~update_kflh_base_impedance_viscosity_ko Update_Kflh_Base_Impedance_Viscosity_KO proc~update_kflh_base_impedance_viscosity_ko->interface~calculate_kflh_base_impedance_viscosity_ko proc~update_kflh_base_ko Update_Kflh_Base_KO proc~update_kflh_base_ko->interface~calculate_kflh_base_ko proc~update_kflh_base_viscosity_ko Update_Kflh_Base_Viscosity_KO proc~update_kflh_base_viscosity_ko->interface~calculate_kflh_base_viscosity_ko interface~update_kflh_base_impedance_ko Type_HCF_Base_Impedance_KO%Update_Kflh_Base_Impedance_KO interface~update_kflh_base_impedance_ko->proc~update_kflh_base_impedance_ko interface~update_kflh_base_impedance_viscosity_ko Type_HCF_Base_Impedance_Viscosity_KO%Update_Kflh_Base_Impedance_Viscosity_KO interface~update_kflh_base_impedance_viscosity_ko->proc~update_kflh_base_impedance_viscosity_ko interface~update_kflh_base_ko Type_HCF_Base_KO%Update_Kflh_Base_KO interface~update_kflh_base_ko->proc~update_kflh_base_ko interface~update_kflh_base_viscosity_ko Type_HCF_Base_Viscosity_KO%Update_Kflh_Base_Viscosity_KO interface~update_kflh_base_viscosity_ko->proc~update_kflh_base_viscosity_ko

Source Code

    module function Calculate_kr_KO_Base(alpha1, n1, l, h) result(kr)
        !$omp declare simd uniform(alpha1, n1, l, h)
        implicit none
        real(real64), intent(in) :: alpha1
        real(real64), intent(in) :: n1
        real(real64), intent(in) :: l
        real(real64), intent(in) :: h
        real(real64) :: kr
        real(real64) :: Sw

        if (h < 0.0d0) then
            Sw = 0.5d0 * erfc(log(h / alpha1) / (n1 * sqrt(2.0d0)))
            kr = Sw**l * (0.5d0 * erfc(log(h / alpha1) / (n1 * sqrt(2.0d0)) + n1 / sqrt(2.0d0)))**2.0d0
        else
            kr = 1.0d0
        end if

    end function Calculate_kr_KO_Base