JunctionParallelChannels1Phase

This is a volume junction that connects an arbitrary number of parallel channels. If modeling elbows or tees, VolumeJunction1Phase must be used instead.

This component can be used to model an abrupt flow area change, a plenum that is divided into several channels, or a plenum that combines several channels into one. Figure 1 shows the channel configuration appropriate for this junction.

Figure 1: Junction with parallel flow channels.

Usage

The parameter "connections" specifies ends of flow channel components to connect.

The parameter "volume" specifies the volume of the junction, and the parameter "position" specifies the spatial location of the center of the junction, which is used for plotting purposes only.

commentnote:Order-dependent connections

Several quantities in the form loss source terms given by Eq. (3) and Eq. (4) are taken from the first connection in "connections", so using different connections in the first entry gives different results.

The parameter "A_ref" is the reference cross-sectional area ArefA_\text{ref} used in Eq. (3) and Eq. (4). If it is not provided, the cross-sectional area of the first connection in "connections" is used.

A form loss coefficient KK may be specified using the parameter "K".

Initial conditions are specified with the following parameters:

The "apply_velocity_scaling" parameter specifies whether to apply the scaling of Hong and Kim (2011) to the normal component of the velocity of the junction state, as described in Volume Junction.

Input Parameters

  • connectionsJunction connections

    C++ Type:std::vector<BoundaryName>

    Unit:(no unit assumed)

    Controllable:No

    Description:Junction connections

  • positionSpatial position of the center of the junction [m]

    C++ Type:libMesh::Point

    Unit:(no unit assumed)

    Controllable:No

    Description:Spatial position of the center of the junction [m]

  • volumeVolume of the junction [m^3]

    C++ Type:double

    Unit:(no unit assumed)

    Controllable:No

    Description:Volume of the junction [m^3]

Required Parameters

  • A_refReference area [m^2]

    C++ Type:double

    Unit:(no unit assumed)

    Controllable:No

    Description:Reference area [m^2]

  • K0Form loss factor [-]

    Default:0

    C++ Type:double

    Unit:(no unit assumed)

    Controllable:Yes

    Description:Form loss factor [-]

  • apply_velocity_scalingFalseSet to true to apply the scaling to the normal velocity. See documentation for more information.

    Default:False

    C++ Type:bool

    Unit:(no unit assumed)

    Controllable:No

    Description:Set to true to apply the scaling to the normal velocity. See documentation for more information.

  • initial_TInitial temperature [K]

    C++ Type:FunctionName

    Unit:(no unit assumed)

    Controllable:No

    Description:Initial temperature [K]

  • initial_pInitial pressure [Pa]

    C++ Type:FunctionName

    Unit:(no unit assumed)

    Controllable:No

    Description:Initial pressure [Pa]

  • initial_vel_xInitial velocity in x-direction [m/s]

    C++ Type:FunctionName

    Unit:(no unit assumed)

    Controllable:No

    Description:Initial velocity in x-direction [m/s]

  • initial_vel_yInitial velocity in y-direction [m/s]

    C++ Type:FunctionName

    Unit:(no unit assumed)

    Controllable:No

    Description:Initial velocity in y-direction [m/s]

  • initial_vel_zInitial velocity in z-direction [m/s]

    C++ Type:FunctionName

    Unit:(no unit assumed)

    Controllable:No

    Description:Initial velocity in z-direction [m/s]

  • scaling_factor_rhoEV1Scaling factor for rho*E*V [-]

    Default:1

    C++ Type:double

    Unit:(no unit assumed)

    Controllable:No

    Description:Scaling factor for rho*E*V [-]

  • scaling_factor_rhoV1Scaling factor for rho*V [-]

    Default:1

    C++ Type:double

    Unit:(no unit assumed)

    Controllable:No

    Description:Scaling factor for rho*V [-]

  • scaling_factor_rhouV1Scaling factor for rho*u*V [-]

    Default:1

    C++ Type:double

    Unit:(no unit assumed)

    Controllable:No

    Description:Scaling factor for rho*u*V [-]

  • scaling_factor_rhovV1Scaling factor for rho*v*V [-]

    Default:1

    C++ Type:double

    Unit:(no unit assumed)

    Controllable:No

    Description:Scaling factor for rho*v*V [-]

  • scaling_factor_rhowV1Scaling factor for rho*w*V [-]

    Default:1

    C++ Type:double

    Unit:(no unit assumed)

    Controllable:No

    Description:Scaling factor for rho*w*V [-]

  • use_scalar_variablesTrueTrue if the junction variables are scalar variables

    Default:True

    C++ Type:bool

    Unit:(no unit assumed)

    Controllable:No

    Description:True if the junction variables are scalar variables

Optional Parameters

  • control_tagsAdds user-defined labels for accessing object parameters via control logic.

    C++ Type:std::vector<std::string>

    Unit:(no unit assumed)

    Controllable:No

    Description:Adds user-defined labels for accessing object parameters via control logic.

  • enableTrueSet the enabled status of the MooseObject.

    Default:True

    C++ Type:bool

    Unit:(no unit assumed)

    Controllable:No

    Description:Set the enabled status of the MooseObject.

Advanced Parameters

Formulation

The junction equations are derived by integrating the conservation equations over the junction volume. This formulation assumes that all connected channels have the same flow direction. For the momentum equation, the term ΓwallpndΓ\int_{\Gamma_{\text{wall}}}{p\bf{n}}{d\Gamma} must be evaluated. For this junction, it is assumed that there is an abrupt flow area change within the junction. For the case where the inlet flow area is smaller than the outlet flow area, the geometry of the junction is shown below.

It is assumed that the wall pressure is:

  • constant and equal to the inlet pressure upstream of the area change.

  • constant and equal to the outlet pressure downstream the area change.

Then the term ΓwallpndΓ\int_{\Gamma_{\text{wall}}}{p\bf{n}}{d\Gamma} is reduced to the surface that is in red in the above diagram.

If the outlet flow area is greater than the inlet flow area, the wall pressure integral projected in the flow direction is:

ΓwallpnflowdΓ=pwallAwall=pout(AoutAin)\int_{\Gamma_{\text{wall}}}{p n_{\text{flow}}}{d\Gamma} = - p_{\text{wall}} A_{\text{wall}} =-p_{\text{out}} \left(A_{\text{out}}-A_{\text{in}}\right)(1)

If the outlet flow area is smaller than the inlet flow area, the wall pressure integral projected in the flow direction is:

ΓwallpnflowdΓ=pwallAwall=pin(AinAout)\int_{\Gamma_{\text{wall}}}{p n_{\text{flow}}}{d\Gamma} = p_{\text{wall}} A_{\text{wall}} =p_{\text{in}} \left(A_{\text{in}}-A_{\text{out}}\right)(2)

Form Loss

Complex multidimensional interactions inside the junction cannot be practically modeled mechanistically but are instead approximated using a form loss factor KK, which gives rise to source terms on the momentum and energy equations:

Smomentum=K(p0,1p1)Arefu1u1\eqc\mathbf{S}^{\text{momentum}} = - K (p_{0,1} - p_1) A_\text{ref} \frac{\mathbf{u}_1}{\|\mathbf{u}_1\|} \eqc(3)Senergy=K(p0,1p1)Arefu1\eqcS^{\text{energy}} = - K (p_{0,1} - p_1) A_\text{ref} \|\mathbf{u}_1\| \eqc(4)

where

  • p0,1p_{0,1} is the stagnation pressure of the first flow channel (see Usage),

  • p1p_1 is the static pressure of the first flow channel,

  • ArefA_\text{ref} is the reference cross-sectional area, and

  • u1\mathbf{u}_1 is the velocity in the first connected flow channel.

References

  1. Seok Hong and Chongam Kim. A new finite volume method on junction coupling and boundary treatment for flow network system analyses. International Journal for Numerical Methods in Fluids, 65:707 – 742, 02 2011. doi:10.1002/fld.2212.[BibTeX]