flow_velocity Function

public function flow_velocity(i_channel_shape, mass_flow_rate, flow_density)

Calculate the coolant flow velocity (m/s) for given pipe mass flow rate and pipe size/shape. N.B. Assumed that primary BB and FW coolants have same pipe radius (= afw). author: G. Graham, CCFE !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

Function return parameter !!!!!

If secondary coolant then rectangular channels assumed

Arguments

Type IntentOptional AttributesName
integer, intent(in) :: i_channel_shape

Coolant mass flow rate per pipe (kg/s)

real(kind=dp), intent(in) :: mass_flow_rate

Coolant density

real(kind=dp), intent(in) :: flow_density

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

If primary coolant then circular channels assumed

Return Value real(kind=dp)

Arguments !!!!!!!!!!!!!!!!!!!!!

Swicth for circular or rectangular channel crossection. Shape depends on whether primary or secondary coolant. - =1 circle (primary) - =2 rectangle (secondary)


Contents

Source Code


Source Code

    function flow_velocity(i_channel_shape, mass_flow_rate, flow_density)

        !! Calculate the coolant flow velocity (m/s) for given pipe mass flow rate and pipe size/shape.
        !! N.B. Assumed that primary BB and FW coolants have same pipe radius (= afw).
        !! author: G. Graham, CCFE
        !! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

        use fwbs_variables, only: afw, a_bz_liq, b_bz_liq
        use constants, only: pi

        implicit none

        !! Function return parameter !!!!!

        real(dp) :: flow_velocity

        !! Arguments !!!!!!!!!!!!!!!!!!!!!

        !! Swicth for circular or rectangular channel crossection.
        !! Shape depends on whether primary or secondary coolant.
        !!  - =1   circle (primary)
        !!  - =2   rectangle (secondary)
        integer, intent(in) :: i_channel_shape

        !! Coolant mass flow rate per pipe (kg/s)
        real(dp), intent(in) :: mass_flow_rate

        !! Coolant density
        real(dp), intent(in) :: flow_density

        !! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

        !! If primary coolant then circular channels assumed
        if (i_channel_shape==1) flow_velocity = mass_flow_rate / (flow_density*pi*afw*afw)

        !! If secondary coolant then rectangular channels assumed
        if (i_channel_shape==2) flow_velocity = mass_flow_rate / (flow_density * a_bz_liq * b_bz_liq)

    end function flow_velocity