calc_sph_gauss_point_3phase Module Function

module function calc_sph_gauss_point_3phase(self, state) result(SPH)

Arguments

Type IntentOptional Attributes Name
class(type_sph_3phase), intent(in) :: self
type(type_gauss_point_state), intent(in) :: state

Return Value real(kind=real64)


Calls

proc~~calc_sph_gauss_point_3phase~~CallsGraph proc~calc_sph_gauss_point_3phase calc_sph_gauss_point_3phase interface~calc_sph_3 Calc_SPH_3 proc~calc_sph_gauss_point_3phase->interface~calc_sph_3 proc~calc_sph_3 calc_sph_3 interface~calc_sph_3->proc~calc_sph_3

Called by

proc~~calc_sph_gauss_point_3phase~~CalledByGraph proc~calc_sph_gauss_point_3phase calc_sph_gauss_point_3phase interface~calc_sph_gauss_point_3phase type_sph_3phase%calc_sph_gauss_point_3phase interface~calc_sph_gauss_point_3phase->proc~calc_sph_gauss_point_3phase

Source Code

    module function calc_sph_gauss_point_3phase(self, state) result(SPH)
        implicit none
        class(type_sph_3phase), intent(in) :: self
        type(type_gauss_point_state), intent(in) :: state
        real(real64) :: SPH

        real(real64) :: phi1, phi2, phi3

        phi1 = 1.0d0 - state%porosity
        phi2 = state%water_content
        phi3 = 1.0d0 - phi1 - phi2

        SPH = calc_sph_3(self%material1, phi1, self%material2, phi2, self%material3, phi3)
    end function calc_sph_gauss_point_3phase