FLUX#

FLUX = {flux_type} <bc_id> <blk_id> <species_id> <file_name> [profile]

Description / Usage#

FLUX cards are used to calculate the integrated fluxes of momentum, mass, energy, etc. on a specified side set during post processing. As many of these FLUX cards as desired can be input to Goma to direct the calculations. For example, multiple cards may be used to compute a particular flux, e.g. FORCE_NORMAL, on different side sets or different fluxes on the same side set. Cards with identical fluxes and identical side sets could be used to output the flux calculations to different files. Definitions of the input parameters are:

{flux_type}
A keyword that can have any one of the following values:
  • FORCE_NORMAL

  • FORCE_TANGENT1

  • FORCE_TANGENT2

  • FORCE_X

  • FORCE_Y

  • FORCE_Z

  • VOLUME_FLUX

  • SPECIES_FLUX

  • HEAT_FLUX

  • TORQUE

  • AVERAGE_CONC

  • SURF_DISSIP

  • AREA

  • VOL_REVOLUTION

  • PORE_LIQ_FLUX

  • CHARGED_SPECIES_FLUX

  • CURRENT_FICKIAN

  • CURRENT

  • ELEC_FORCE_NORMAL

  • ELEC_FORCE_TANGENT1

  • ELEC_FORCE_TANGENT2

  • ELEC_FORCE_X

  • ELEC_FORCE_Y

  • ELEC_FORCE_Z

  • NET_SURF_CHARGE

  • ACOUSTIC_FLUX_NORMAL

  • ACOUSTIC_FLUX_TANGENT1

  • ACOUSTIC_FLUX_TANGENT2

  • ACOUSTIC_FLUX_X

  • ACOUSTIC_FLUX_Y

  • ACOUSTIC_FLUX_Z

For every request, the integral of the diffusive portion followed by that of the convective portion over the requested boundary will be appended to the specified file. If the convective flux is not applicable (i.e.for flux_types VOLUME_FLUX, TORQUE, AVERAGE_CONC and AREA), the second quantity will be zero. In all cases the area of the face (covered by the entire side set) and the time value are also output.

<bc_id>

The boundary flag identifier, an integer associated with the boundary location (side set in EXODUS II) in the problem domain on which the integrated flux is desired.

<blk_id>

An integer that designates the mesh block (material) from which the flux integral should be performed. This has implications on internal boundaries.

<species_id>

An integer that identifies the species number if an integrated species flux is requested.

<file_name>

A character string corresponding to a file name into which these fluxes should be printed.

[profile [flag0] [flag1] [flag2] [flag3] [flag4]]

Inclusion of the optional string “profile” to this card will cause the coordinates (x,y,z), the diffusive integrand, and the convective integrand at each integration point to be printed to the file designated above. You can, for example, print out a pressure distribution used to compute a force.

profile on always prints: x y z coords, flux and flux_conv at position

flags are 0 or 1, 0 disabled, 1 enabled

  • flag0: shear rate, viscosity

  • flag1: mesh principal eigenvalues

  • flag2: surface tension

  • flag3: temperature pressure

  • flag4: x-normal y-normal z-normal

Examples#

The following example shows a sample input deck section that requests five such integrated fluxes:

Post Processing Fluxes =
FLUX = FORCE_X 5 1 0 side5.out
FLUX = FORCE_Y 5 1 0 side5prof.out   profile
FLUX = FORCE_NORMAL 8 1 0 side8.out
FLUX = FORCE_TANGENT1 8 1 0 side8.out
FLUX = VOLUME_FLUX 8 1 0 side8.out
END OF FLUX

Technical Discussion#

The permissible flux types are those listed in file mm_post_def.h for struct Post_Processing_Flux_Names, pp_flux_names being one variable of this struct type.

The flux integrations are carried out as follows:

FLUX

DIFFUSIVE FLUX

CONVECTIVE FLUX

FORCE_NORMAL

\(\int\) n • \(\underline{T}\) • ndA

\(\int\rho\) n • (v - \(v_m\)) v • ndA

FORCE_TANGENT1

\(\int_1\)\(\underline{T}\) • ndA

\(\int\rho\) \(t_1\) (v - \(v_m\)) v • ndA

FORCE_TANGENT2

\(\int_2\)\(\underline{T}\) • ndA

\(\int\rho\) \(t_2\) (v - \(v_m\)) v • ndA

FORCE_X

\(\int\) i • \(\underline{T}\) • ndA

\(\int\rho\) i (v - \(v_m\)) v • ndA

FORCE_Y

\(\int\) j • \(\underline{T}\) • ndA

\(\int\rho\) j (v - \(v_m\)) v • ndA

FORCE_Z

\(\int\) k • \(\underline{T}\) • ndA

\(\int\rho\) k (v - \(v_m\)) v • ndA

VOLUME_FLUX

\(\int\) n • (v - \(v_m\)) dA

for ARBITRARY mesh motion.

\(\int\) n • ddA

for LAGRANGIAN mesh motion.

SPECIES_FLUX

\(\int\) (-\(D_jn\)\(\Delta\) cj) dA

\(\int\rho\) n • ( v - \(v_m\) ) cjdA

HEAT_FLUX

\(\int\) (-kn • \(\Delta\) T) dA

\(\int\rho\) CpTn • ( v - \(v_m\) ) dA

TORQUE

\(\int\) \(re_r\) × ( \(\underline{T}\) • n) dA

AVERAGE_CONC

\(\int\) cjdA

SURF_DISSIP

\(\int\sigma\Delta\) v • ( \(\zeta\) - nn) dA

AREA

\(\int\) dA

VOL_REVOLUTION

\(\int\frac{1}{2}\) \(\frac{r}{\sqrt{}{1 + (dr/dz)^2}}\) dA

POR_LIQ_FLUX

\(\int\) n • (\(\rho_lv_{darcy}\)) dA

CHARGED_SPECIES_FLUX

\(\int\) (-Djn • \(\Delta\) cj) dA

\(\int\rho\) n • ( v - \(v_m\) ) cjdA

CURRENT_FICKIAN

\(\int\) (-Djn • \(\Delta\) cj) dA

\(\int\rho\) n • ( v - \(v_m\) ) cjdA

PVELOCITY[1-3]

\(\int\) n • pvjdA

ELEC_FORCE_NORMAL

\(\int\) n \(\underline{T}_e\) • ndA

ELEC_FORCE_TANGENT1

\(\int\) \(t_1\)\(\underline{T}_e\) • ndA

ELEC_FORCE_TANGENT2

\(\int\) \(t_2\)\(\underline{T}_e\) • ndA

ELEC_FORCE_X

\(\int\) i • \(\underline{T}_e\) • ndA

ELEC_FORCE_Y

\(\int\) j • \(\underline{T}_e\) • ndA

ELEC_FORCE_Y

\(\int\) k • \(\underline{T}_e\) • ndA

NET_SURF_CHARGE

\(\int\) (-\(\varepsilon\) \(\underline{n}\)\(\underline{E}\)) dA

ACOUSTIC_FLUX_NORMAL

\(\int\) (-\(\frac{1}{kR}\) n • \(\Delta P_{imag}\)) dA

\(\int\) (-\(\frac{1}{kR}\) n • \(\Delta P_{real}\)) dA

ACOUSTIC_FLUX_TANGENT1

\(\int\) (-\(\frac{1}{kR}\) \(t_1\)\(\Delta P_{imag}\)) dA

\(\int\) (-\(\frac{1}{kR}\) \(t_1\)\(\Delta P_{real}\)) dA

ACOUSTIC_FLUX_TANGENT2

\(\int\) (-\(\frac{1}{kR}\) \(t_2\)\(\Delta P_{imag}\)) dA

\(\int\) (-\(\frac{1}{kR}\) \(t_2\)\(\Delta P_{real}\)) dA

ACOUSTIC_FLUX_X

\(\int\) (-\(\frac{1}{kR}\) \(i\)\(\Delta P_{imag}\)) dA

\(\int\) (-\(\frac{1}{kR}\) \(i\)\(\Delta P_{real}\)) dA

ACOUSTIC_FLUX_Y

\(\int\) (-\(\frac{1}{kR}\) \(j\)\(\Delta P_{imag}\)) dA

\(\int\) (-\(\frac{1}{kR}\) \(j\)\(\Delta P_{real}\)) dA

ACOUSTIC_FLUX_Z

\(\int\) (-\(\frac{1}{kR}\) \(k\)\(\Delta P_{imag}\)) dA

\(\int\) (-\(\frac{1}{kR}\) \(k\)\(\Delta P_{real}\)) dA

The SURF_DISSIP card is used to compute the energy dissipated at a surface by surface tension (Batchelor, 1970). The VOL_REVOLUTION card is used in axi- symmetric problems to compute the volume swept by revolving a surface around the axis of symmetry (z-axis). Even though every flux card results in the area computation of the side set, the AREA card is used when the area of a surface is part of an augmenting condition. The POR_LIQ_FLUX term is valid only for saturated media and the Darcy velocity is defined by \(\nu_{darcy}\) = (\(\kappa\) / \(\mu\)) \(\Delta\) \(p_{liq}\) . For the more general case, refer to the POROUS_LIQ_FLUX_CONST boundary condition.

References#

Batchelor, JFM, 1970. ….. need to fill-in reference; get from RBS

For information on using flux calculations as part of augmenting conditions, see:

SAND2000-2465: Advanced Capabilities in Goma 3.0 - Augmenting Conditions, Automatic Continuation, and Linear Stability Analysis, I. D. Gates, I. D., Labreche, D. A. and Hopkins, M. M. (January 2001).