Post Processing Fluxes and Data

By Post-processing Fluxes we mean area-integrated fluxes that can be calculated for any flux quantity across any surface demarcated by a side set. The area-integrated flux is in fact a total flow rate across the boundary. Examples include heat-flow, total force of a liquid on a surface, and species flow (both diffusive and convective). The integrated flux quantities are output to a specified file at each time step, together with the time stamp and the convective and diffusive components. This capability is useful for extracting engineering results from an analysis, and can further be used to as an objective function evaluator for engineering optimization problems (cf. Post Processing Flux Sensitivities card below).

Post Processing Data output can be used to produce spatial {value, x, y, z} sets on a specified side set of any primitive variable in the problem, viz. pressure, x-component of velocity, etc. The quantity value is the value of the variable at a node in the side set, and x, y, z are the coordinates of the node.

Post Processing Fluxes

Post Processing Fluxes =

Description / Usage

This card indicates that the cards between this and an END OF FLUX card are to be read and processed. If this card (Post Processing Fluxes) is not present, FLUX cards will be ignored.

Examples

There are no input parameters for this card, which always appears as follows:

Post Processing Fluxes =

Technical Discussion

No Discussion.

References

No References.

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]

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.

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).

END OF FLUX

END OF FLUX

Description / Usage

This card is used to denote the end of a set of FLUX cards and is only used when the Post Processing Fluxes card is present and one or more FLUX cards are specified.

Examples

A simple example of using this card in context is shown below.

Post Processing Fluxes =
FLUX = FORCE_X 5 1 0 side5.out
END OF FLUX

Technical Discussion

No Discussion.

References

No References.

Post Processing Data

Post Processing Data =

Description / Usage

This card indicates that the cards between this and an END OF DATA card are to be read and processed. If this card (Post Processing Data) is not present, DATA cards will be ignored.

Examples

There are no input parameters for this card, which always appears as follows:

Post Processing Data =

Technical Discussion

No Discussion.

References

No References.

DATA

DATA = {data_type} <bc_id> <blk_id> <species_id> <file_name>

Description / Usage

A DATA card directs Goma to output the indicated primitive variable on a specified node set. As many of these DATA cards as desired can be input to Goma. For example, multiple cards may be used to output a particular variable, e.g. VELOCITY1, on different node sets or different variables on the same node set. Cards with identical variables and identical node sets could be used to output the variables to different files. Definitions of the input parameters are as follows:

{data_type}

A keyword that can have any one of the following primitive values:

  • VELOCITY[1-3]

  • TEMPERATURE

  • MASS_FRACTION

  • MESH_DISPLACEMENT[1-3]

  • SURFACE

  • PRESSURE

  • POLYMER_STRESS[1-3][1-3]

  • SOLID_DISPLACEMENT[1-3]

  • VELOCITY_GRADIENT[1-3][1-3]

  • VOLTAGE

  • FILL

  • SHEAR_RATE

  • PVELOCITY[1-3]

  • POLYMER_STRESS[1-3][1-3]_[1-7}

  • SPECIES_UNK[0-29]

  • VolFracPh_[0-4]

  • POR_LIQ_PRES

  • POR_GAS_PRES

  • POR_PORSITY

  • POR_SATURATION

  • VORT_DIR[1-3]

  • VORT_LAMBDA

Each request will result in the point coordinates and the quantity value being printed to the specified file.

<bc_id>

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

<blk_id>

An integer that designates the mesh block (material) from which the variable value should be taken. This has implications for discontinuous variables on internal boundaries.

<species_id>

An integer that identifies the species number if a species variable is requested.

<file_name>

A character string corresponding to a file name into which the data should be printed.

Examples

A simple example of using this card in context is shown below.

Post Processing Data =
DATA = VELOCITY2 1 1 0 data.out
END OF DATA

Technical Discussion

If a fixed mesh or a subparametric mesh problem is being solved, the point coordinates printed to the file will be the undeformed coordinates.

References

No References.

END OF DATA

END OF DATA

Description / Usage

This card is used to denote the end of a set of DATA cards and is only used when the Post Processing Data card is present and one or more DATA cards are specified.

Examples

A simple example of using this card in context is shown below.

Post Processing Data =
DATA = VELOCITY2 1 1 0 data.out
END OF DATA

Technical Discussion

No Discussion.

References

No References.

Post Processing Flux Sensitivities

Post Processing Flux Sensitivities =

Description / Usage

This card indicates that the cards between this and an END OF FLUX_SENS card are to be read and processed. If this card (Post Processing Flux Sensitivities) is not present, FLUX_SENS cards will be ignored.

Examples

There are no input parameters for this card, which always appears as follows:

Post Processing Flux Sensitivities =

Technical Discussion

No Discussion.

References

No References.

FLUX_SENS

FLUX_SENS = {flux_type} <bc_id> <blk_id> <species_id> {sens_type}
<sens_id> <sens_flt> <file_name>

Description / Usage

FLUX_SENS cards request the calculation of the sensitivity of an integrated flux with respect to a boundary condition or material parameter. As many FLUX_SENS cards as desired can be input to Goma. Definitions of the input parameters are as follows:

{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

For every request, the specified sensitivity of the integrated diffusive flux 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 (cf. FLUX card), 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 (node set in EXODUS II) in the problem domain on which the integrated flux sensitivity is desired.

<blk_id>

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

<species_id>

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

{sens_type}

A two-character entry that identifies the sensitivity type, where:

  • BC denotes a sensitivity w.r.t. to a boundary condition parameter.

  • MT denotes a sensitivity w.r.t. to a material property parameter.

<sens_id>

An integer that identifies the sensitivity. If BC is specified for {sens_type}, then this value is the BC card number. If MT is specified for {sens_type}, this value is the material number.

<sens_flt>

A floating point number whose meaning is also dependent on the selection of {sens_type}. If BC is specified, this value is the BC data float number. If MT is specified, this value is the material property tag.

<file_name>

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

Examples

Here is an example input deck:

Post Processing Flux Sensitivities =
FLUX_SENS = VOLUME_FLUX 1 1 0 BC 5 3 flux_sens.out
END OF FLUX_SENS

Technical Discussion

Currently, the flux sensitivities do not account for the implicit sensitivity of material properties. That is, \(dFORCE_X\) / \(dBC_{float}\) does not include a contribution from \(d\mu\) / \(dBC_{float}\) , but \(dFORCE_X\) / \(dMT_{property}\) should be done correctly. In addition, sensitivities of integrated fluxes in solid materials have not been implemented yet.

NOTE: In order to compute flux sensitivities with respect to Dirichlet boundary condition floats, the boundary conditions need to use the residual method in the input file as described in the Boundary Condition Specification introduction, i.e. the optional parameter should be set to 1.0.

References

No References.

END OF FLUX_SENS

END OF FLUX_SENS

Description / Usage

This card is used to denote the end of a set of FLUX_SENS cards and is only used when the Post Processing Flux Sensitivities card is present and one or more FLUX_SENS cards are specified.

Examples

A simple example of using this card in context is shown below.

Post Processing Flux Sensitivities =
FLUX_SENS = VOLUME_FLUX 1 1 0 BC 5 3 flux_sens.out
END OF FLUX_SENS

Technical Discussion

No Discussion.

References

No References.

Post Processing Data Sensitivities

Post Processing Data Sensitivities =

Description / Usage

This card indicates that the cards between this and an END OF DATA_SENS card are to be read and processed. If this card (Post Processing Data Sensitivities) is not present, DATA_SENS cards will be ignored.

Examples

There are no input parameters for this card, which always appears as follows:

Post Processing Data Sensitivities =

Technical Discussion

No Discussion.

References

No References.

DATA_SENS

DATA = {data_type} <bc_id> <blk_id> <species_id> {sens_type} <sens_id>
<sens_flt> <file_name>

Description / Usage

As many of these DATA_SENS cards as desired can be input to direct Goma to print the sensitivity of a specified variable with respect to a boundary condition or material parameter on a specified node set. Definitions of the input parameters are as follows:

{data_type}

A keyword that can have any one of the following values:

  • VELOCITY[1-3]

  • TEMPERATURE

  • MASS_FRACTION

  • MESH_DISPLACEMENT[1-3]

  • SURFACE

  • PRESSURE

  • POLYMER_STRESS[1-3][1-3]

  • SOLID_DISPLACEMENT[1-3]

  • VELOCITY_GRADIENT[1-3][1-3]

  • VOLTAGE

  • FILL

  • SHEAR_RATE

  • PVELOCITY[1-3]

  • VolFracPh_[0-4]

  • POR_LIQ_PRES

  • POR_GAS_PRES

  • POR_PORSITY

  • POR_SATURATION

  • VORT_DIR[1-3]

  • VORT_LAMBDA

Each request will result in the point coordinates and the specified sensitivity value being printed to the specified file.

<bc_id>

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

<blk_id>

An integer that designates the mesh block (material) from which the variable sensitivity should be taken. This has implications for discontinuous variables on internal boundaries.

<species_id>

An integer that identifies the species number if a species sensitivity is requested.

{sens_type}

A two-character entry that identifies the sensitivity type, where:

  • BC denotes a sensitivity w.r.t. to a boundary condition parameter.

  • MT denotes a sensitivity w.r.t. to a material property parameter.

<sens_id>

An integer that identifies the sensitivity. If BC is specified for {sens_type}, then this value is the BC card number. If MT is specified for {sens_type}, this value is the material number.

<sens_flt>

A floating point number whose meaning is also dependent on the selection of {sens_type}. If BC is specified, this value is the BC data float number. If MT is specified, this value is the material property tag.

<file_name>

A character string corresponding to a file name into which the data should be printed.

Examples

The following example shows a sample input deck section with three data requests:

Post Processing Data Sensitivities =
DATA_SENS = VELOCITY2 1 1 0 BC 5 3 data_sens.out
DATA_SENS = VELOCITY1 6 1 0 BC 5 3 data_sens.out
DATA_SENS = VELOCITY1 6 1 0 BC 4 0 data_sens.out
END OF DATA_SENS

Technical Discussion

NOTE: In order to compute data sensitivities with respect to dirichlet boundary condition floats, the boundary conditions need to be “soft” set in the input file, i.e. the optional parameter should be set to 1.0.

References

No References.

END OF DATA_SENS

END OF DATA_SENS

Description / Usage

This card is used to denote the end of a set of DATA_SENS cards and is only used when the Post Processing Data Sensitivities card is present and one or more DATA_SENS cards are specified.

Examples

A simple example of using this card in context is shown below.

Post Processing Data Sensitivities =
DATA_SENS = VELOCITY2 1 1 0 BC 5 3 data_sens.out
END OF DATA_SENS

Technical Discussion

No Discussion.

References

No References.