VolumeJunction1Phase

This is a flow junction that has a volume and can connect 2 or more FlowChannel1Phase components in any orientation.

Formulation

See Volume Junction for the theoretical formulation.

Form Losses

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(1)Senergy=K(p0,1p1)Arefu1\eqcS^{\text{energy}} = - K (p_{0,1} - p_1) A_\text{ref} \|\mathbf{u}_1\| \eqc(2)

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.

Usage

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

A form loss coefficient KK may be specified using the parameter "K". The parameter "A_ref" is the reference cross-sectional area ArefA_\text{ref} used in Eq. (1) and Eq. (2). If it is not provided, the cross-sectional area of the first connection in "connections" is used.

commentnote:Connection order matters when using form loss

The order of connections in "connections" has an impact when using form loss, since some quantities in Eq. (1) and Eq. (2) are taken from the first connection.

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

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]