Appendix A: Conventions for Data-Name Identifiers

Identifiers or names can be attached to DataArray_t entities to identify and describe the quantity being stored. To facilitate communication between different application codes, we propose to establish a set of standardized data-name identifiers with fairly precise definitions. For any identifier in this set, the associated data should be unambiguously understood. In essence, this section proposes standardized terminology for labeling CFD-related data, including grid coordinates, flow solution, turbulence model quantities, nondimensional governing parameters, boundary condition quantities, and forces and moments.

We use the convention that all standardized identifiers denote scalar quantities; this is consistent with the intended use of the DataArray_t structure type to describe an array of scalars. For quantities that are vectors, such as velocity, their components are listed.

Included with the lists of standard data-name identifiers are the fundamental units of dimensions associated with that quantity. The following notation is used for the fundamental units: \(M\) is mass, \(L\) is length, \(T\) is time, \(\Theta\) is temperature, \(\alpha\) is angle, and \(I\) is electric current. These fundamental units are directly associated with the elements of the DimensionalExponents_t structure. For example, a quantity that has dimensions \(ML/T\) corresponds to MassExponent = +1, LengthExponent = +1, and TimeExponent = -1.

Unless otherwise noted, all quantities in the following sections denote floating-point data types, and the appropriate DataType structure parameter for DataArray_t is real.

A1 Coordinate Systems

Coordinate systems for identifying physical location are as follows:

System

3-D

2-D

Cartesian

\((x,y,z)\)

\((x,y)\) or \((x,z)\) or \((y,z)\)

Cylindrical

\((r,\theta,z)\)

\((r,\theta)\)

Spherical

\((r,\theta,\phi)\)

Auxiliary

\((\xi,\eta,\zeta)\)

\((\xi,\eta)\) or \((\xi,\zeta)\) or \((\eta,\zeta)\)

Associated with these coordinate systems are the following unit vector conventions:

\(x\)-direction: \(\mathbf{e}_x\)

\(r\)-direction: \(\mathbf{e}_r\)

\(\xi\)-direction: \(\mathbf{e}_\xi\)

\(y\)-direction: \(\mathbf{e}_y\)

\(\theta\)-direction: \(\mathbf{e}_\theta\)

\(\eta\)-direction: \(\mathbf{e}_\eta\)

\(z\)-direction: \(\mathbf{e}_z\)

\(\phi\)-direction: \(\mathbf{e}_\phi\)

\(\zeta\)-direction: \(\mathbf{e}_\zeta\)

Note that \(\mathbf{e}_r\), \(\mathbf{e}_\theta\) and \(\mathbf{e}_\phi\) are functions of position.

We envision that one of the “standard” coordinate systems (Cartesian, cylindrical or spherical) will be used within a zone (or perhaps the entire database) to define grid coordinates and other related data. The auxiliary coordinates will be used for special quantities, including forces and moments, which may not be defined in the same coordinate system as the rest of the data. When auxiliary coordinates are used, a transformation must also be provided to uniquely define them. For example, the transform from Cartesian to orthogonal auxiliary coordinates is,

\[\begin{split}\begin{pmatrix} \hat{e}_\xi \\ \hat{e}_\eta\\ \hat{e}_\zeta \end{pmatrix} = T \begin{pmatrix} \hat{e}_x \\ \hat{e}_y \\ \hat{e}_z \end{pmatrix}\end{split}\]

where \(T\) is an orthonormal matrix (\(2\times2\) in 2-D and \(3\times3\) in 3-D).

In addition, normal and tangential coordinates are often used to define boundary conditions and data related to surfaces. The normal coordinate is identified as \(n\) with the unit vector \(\mathbf{e}_n\).

The data-name identifiers defined for coordinate systems are listed in the following table. All represent real DataTypes, except for ElementConnectivity and ParentData, which are integer.

Data-Name Identifiers for Coordinate Systems

Data-Name Identifier

Description

Units

CoordinateX

\(x\)

\(L\)

CoordinateY

\(y\)

\(L\)

CoordinateZ

\(z\)

\(L\)

CoordinateR

\(r\)

\(L\)

CoordinateTheta

\(\theta\)

\(\alpha\)

CoordinatePhi

\(\phi\)

\(\alpha\)

CoordinateNormal

Coordinate in direction of \(\mathbf{e}_n\)

\(L\)

CoordinateTangential

Tangential coordinate (2-D only)

\(L\)

CoordinateXi

\(\xi\)

\(L\)

CoordinateEta

\(\eta\)

\(L\)

CoordinateZeta

\(\zeta\)

\(L\)

CoordinateTransform

Transformation matrix (\(\mathbf{T}\))

\(-\)

InterpolantsDonor

Interpolation factors

\(-\)

ElementConnectivity

Nodes making up an element

\(-\)

ParentData

Element parent identification

\(-\)

A2 Flowfield Solution

This section describes data-name identifiers for typical Navier-Stokes solution variables. The list is obviously incomplete, but should suffice for initial implementation of the CGNS system. The variables listed in this section are dimensional or raw quantities; nondimensional parameters and coefficients based on these variables are discussed in the section Nondimensional Parameters.

We use fairly universal notation for state variables. Static quantities are measured with the fluid at speed: static density (\(\rho\)), static pressure (\(p\)), static temperature (\(T\)), static internal energy per unit mass (\(e\)), static enthalpy per unit mass (\(h\)), entropy (\(s\)), and static speed of sound (\(c\)). We also approximate the true entropy by the function \(s_{app} = p / \rho^{\gamma}\) (this assumes an ideal gas). The velocity is \(\mathbf{q} = u \mathbf{e}_x + v \mathbf{e}_y + w \mathbf{e}_z\), with magnitude \(q = ( \mathbf{q} \cdot \mathbf{q})^{1/2}\). Stagnation quantities are obtained by bringing the fluid isentropically to rest; these are identified by a subscript “0”. The term “total” is also used to refer to stagnation quantities.

Conservation variables are density, momentum (\(\rho \mathbf{q} = \rho u \mathbf{e}_x + \rho v \mathbf{e}_y + \rho w \mathbf{e}_z\)), and stagnation energy per unit volume (\(\rho e_{0}\)).

For rotating coordinate systems, \(u\), \(v\), and \(w\) are the \(x\), \(y\), and \(z\) components of the velocity vector in the inertial frame; \(\mathbf{\omega}\) is the rotation rate vector; \(\mathbf{R}\) is a vector from the center of rotation to the point of interest; and \(\mathbf{w}_r = \mathbf{\omega} \times \mathbf{R}\) is the rotational velocity vector of the rotating frame of reference, with components \(w_{rx}\), \(w_{ry}\), and \(w_{rz}\).

Molecular diffusion and heat transfer introduce the molecular viscosity (\(\mu\)), kinematic viscosity (\(\nu\)) and thermal conductivity coefficient (\(k\)). These are obtained from the state variables through auxiliary correlations. For a perfect gas, \(\mu\) and \(k\) are functions of static temperature only.

The Navier-Stokes equations involve the strain tensor (\(\bar{\bar{S}}\)) and the shear-stress tensor (\(\bar{\bar{\tau}}\)). Using indicial notation, the 3-D Cartesian components of the strain tensor are,

\[\bar{\bar{S}}_{ij} = \left( \frac{\partial u_i}{\partial x_j} + \frac{\partial u_j}{\partial x_i} \right)\]

and the stress tensor is,

\[\bar{\bar{\tau}}_{ij} = \mu \left( \frac{\partial u_i}{\partial x_j} + \frac{\partial u_j}{\partial x_i} \right) + \lambda \frac{\partial u_k}{\partial x_k}\]

where \((x_1,x_2,x_3) = (x,y,z)\) and \((u_1,u_2,u_3) = (u,v,w)\). The bulk viscosity is usually approximated as \(\lambda = − 2 \mu /3\).

Reynolds averaging of the Navier-Stokes equations introduce Reynolds stresses (\(−\rho(u′v′)_{ave}\), etc.) and turbulent heat flux terms (\(−\rho(u′e′)_{ave}\), etc.), where primed quantities are instantaneous fluctuations. These quantities are obtained from auxiliary turbulence closure models. Reynolds-stress models formulate transport equations for the Reynolds stresses directly; whereas, eddy-viscosity models correlate the Reynolds stresses with the mean strain rate,

\[−(u′v′)_{ave} = \nu_t (\partial u/\partial y + \partial v/\partial x)\]

where \(\nu_t\) is the kinematic eddy viscosity. The eddy viscosity is either correlated to mean flow quantities by algebraic models or by auxiliary transport models. An example two-equation turbulence transport model is the \(k\)-\(\epsilon\) model, where transport equations are formulated for the turbulent kinetic energy (\(k = [(u′u′)_{ave} + (v′v′)_{ave} + (w′w′)_{ave}] / 2\)) and turbulent dissipation (\(\epsilon\)).

Skin friction evaluated at a surface is the dot product of the shear stress tensor with the surface normal:

\[\overrightarrow{\tau} = \bar{\bar{\tau}} \cdot \hat{n}\]

Note that skin friction is a vector.

The data-name identifiers defined for flow solution quantities are listed below.

Note that for some vector quantities, like momentum, the table only explicitly lists data-name identifiers for the \(x\), \(y\), and \(z\) components, and for the magnitude. It should be understood, however, that for any vector quantity with a standardized data name “Vector”, the following standardized data names are also defined:

VectorX

\(x\)-component of vector

VectorY

\(y\)-component of vector

VectorZ

\(z\)-component of vector

VectorR

Radial component of vector

VectorTheta

\(\theta\)-component of vector

VectorPhi

\(\phi\)-component of vector

VectorMagnitude

Magnitude of vector

VectorNormal

Normal component of vector

VectorTangential

Tangential component of vector (2-D only)

Also note that some data-name identifiers used with multi-species flows include the variable string Symbol, which represents either the chemical symbol for a species, or a defined name for a mixture. See the section describing the ChemicalKineticsModel data structure for examples and a table of defined names.

Data-Name Identifiers for Flow Solution Quantities

Data-Name Identifier

Description

Units

Potential

Potential: \(\nabla\phi = q\)

\(L^{2}/T\)

StreamFunction

Stream function (2-D): \(\nabla \times \psi = q\)

\(L^{2}/T\)

Density

Static density (\(\rho\))

\(M/L^{3}\)

Pressure

Static pressure (\(p\))

\(M/(LT^{2})\)

Temperature

Static temperature (\(T\))

\(\Theta\)

EnergyInternal

Static internal energy per unit mass (\(e\))

\(L^{2}/T^{2}\)

Enthalpy

Static enthalpy per unit mass (\(h\))

\(L^{2}/T^{2}\)

Entropy

Entropy (\(s\))

\(M L^{2}/(T^{2} \Theta)\)

EntropyApprox

Approximate entropy (\(s_{app} = p / \rho^{\gamma}\))

\(L^{3\gamma−1}/(M^{\gamma−1} T^{2})\)

DensityStagnation

Stagnation density (\(\rho_0\))

\(M/L^{3}\)

PressureStagnation

Stagnation pressure (\(p_0\))

\(M/(LT^{2})\)

TemperatureStagnation

Stagnation temperature (\(T_0\))

\(\Theta\)

EnergyStagnation

Stagnation energy per unit mass (\(e_0\))

\(L^{2}/T^{2}\)

EnthalpyStagnation

Stagnation enthalpy per unit mass (\(h_0\))

\(L^{2}/T^{2}\)

EnergyStagnationDensity

Stagnation energy per unit volume (\(\rho e_0\))

\(M/(L T^{2})\)

VelocityX

x-component of velocity (\(u = \mathbf{q} \cdot \mathbf{e}_x\))

\(L/T\)

VelocityY

y-component of velocity (\(v = \mathbf{q} \cdot \mathbf{e}_y\))

\(L/T\)

VelocityZ

z-component of velocity (\(w = \mathbf{q} \cdot \mathbf{e}_z\))

\(L/T\)

VelocityR

Radial velocity component (\(\mathbf{q} \cdot \mathbf{e}_r\))

\(L/T\)

VelocityTheta

Velocity component in \(\theta\) direction (\(\mathbf{q} \cdot \mathbf{e}_\theta\))

\(L/T\)

VelocityPhi

Velocity component in \(\phi\) direction (\(\mathbf{q} \cdot \mathbf{e}_\phi\))

\(L/T\)

VelocityMagnitude

Velocity magnitude (\(q = (\mathbf{q} \cdot \mathbf{q})^{1/2}\))

\(L/T\)

VelocityNormal

Normal velocity component (\(\mathbf{q} \cdot \mathbf{n}\))

\(L/T\)

VelocityTangential

Tangential velocity component (2-D)

\(L/T\)

VelocitySound

Static speed of sound

\(L/T\)

VelocitySoundStagnation

Stagnation speed of sound

\(L/T\)

MomentumX

x-component of momentum (\(\rho u\))

\(M/(L^{2}T)\)

MomentumY

y-component of momentum (\(\rho v\))

\(M/(L^{2}T)\)

MomentumZ

z-component of momentum (\(\rho w\))

\(M/(L^{2}T)\)

MomentumMagnitude

Magnitude of momentum (\(\rho q\))

\(M/(L^{2}T)\)

RotatingVelocityX

x-component of velocity, relative to rotating frame (\(u_{rx} = u − w_{rx}\))

\(L/T\)

RotatingVelocityY

y-component of velocity, relative to rotating frame (\(u_{ry} = v − w_{ry}\))

\(L/T\)

RotatingVelocityZ

z-component of velocity, relative to rotating frame (\(u_{rz} = w − w_{rz}\))

\(L/T\)

RotatingMomentumX

x-component of momentum, relative to rotating frame (\(\rho u_{rx}\))

\(M/(L^{2}T)\)

RotatingMomentumY

y-component of momentum, relative to rotating frame (\(\rho u_{ry}\))

\(M/(L^{2}T)\)

RotatingMomentumZ

z-component of momentum, relative to rotating frame (\(\rho u_{rz}\))

\(M/(L^{2}T)\)

RotatingVelocityMagnitude

Velocity magnitude in rotating frame (\(q_r = (u_{rx} + u_{ry} + u_{rz})^{1/2}\))

\(L/T\)

RotatingPressureStagnation

Stagnation pressure in rotating frame

\(M/(LT^{2})\)

RotatingEnergyStagnation

Stagnation energy per unit mass in rotating frame (\((e_{0})_r\))

\(L^{2}/T^{2}\)

RotatingEnergyStagnationDensity

Stagnation energy per unit volume in rotating frame (\(\rho (e_{0})_r\))

\(M/(LT^{2})\)

RotatingEnthalpyStagnation

Stagnation enthalpy per unit mass in rotating frame, rothalpy

\(L^{2}/T^{2}\)

EnergyKinetic

\((u^{2} + v^{2} + w^{2})/2 = q^{2}/2\)

\(L^{2}/T^{2}\)

PressureDynamic

\(\rho q^{2}/2\)

\(M/(LT^{2})\)

SoundIntensityDB

Sound intensity level in decibels, \(10 {log_{10}}(I/I_{ref}) = 20 {log_{10}}(p/p_{ref})\), where \(I\) is the sound power per unit area, \(I_{ref} = 10−12 watts/m^{2}\) is the reference sound power per unit area, \(p\) is the pressure wave amplitude, and \(p_{ref} = 2\times10^{−5}\ N/m^{2}\) is the reference pressure.

\(-\)

SoundIntensity

Sound intensity (i.e., sound power per unit area, \(I\))

\(M/T^{3}\)

VorticityX

\(\omega_x = \partial w/ \partial y − \partial v/ \partial z = \mathbf{\omega} \cdot \mathbf{e}_x\)

\(T^{−1}\)

VorticityY

\(\omega_y = \partial u/ \partial z − \partial w/ \partial x = \mathbf{\omega} \cdot \mathbf{e}_y\)

\(T^{−1}\)

VorticityZ

\(\omega_z = \partial v/ \partial x − \partial u/ \partial y = \mathbf{\omega} \cdot \mathbf{e}_z\)

\(T^{−1}\)

VorticityMagnitude

\(\omega = (\mathbf{\omega} \times \mathbf{\omega})^{1/2}\)

\(T^{−1}\)

SkinFrictionX

x-component of skin friction (\(\mathbf{\tau} \cdot \mathbf{e}_x\))

\(M/(LT^{2})\)

SkinFrictionY

y-component of skin friction (\(\mathbf{\tau} \cdot \mathbf{e}_y\))

\(M/(LT^{2})\)

SkinFrictionZ

z-component of skin friction (\(\mathbf{\tau} \cdot \mathbf{e}_z\))

\(M/(LT^{2})\)

SkinFrictionMagnitude

Skin friction magnitude (\((\mathbf{\tau} \times \mathbf{\tau})^{1/2}\))

\(M/(LT^{2})\)

VelocityAngleX

Velocity angle (\(arccos(u/q) \in [0, \pi]\))

\(\alpha\)

VelocityAngleY

\(arccos(v/q)\)

\(\alpha\)

VelocityAngleZ

\(arccos(w/q)\)

\(\alpha\)

VelocityUnitVectorX

x-component of velocity unit vector (\(\mathbf{q} \cdot \mathbf{e}_x / q\))

\(-\)

VelocityUnitVectorY

y-component of velocity unit vector (\(\mathbf{q} \cdot \mathbf{e}_y / q\))

\(-\)

VelocityUnitVectorZ

z-component of velocity unit vector (\(\mathbf{q} \cdot \mathbf{e}_z / q\))

\(-\)

MassFlow

Mass flow normal to a plane (\(\rho \mathbf{q} \cdot \mathbf{n}\))

\(M/(L^{2}T)\)

ViscosityKinematic

Kinematic viscosity (\(\nu = \mu/\rho\))

\(L^{2}/T\)

ViscosityMolecular

Molecular viscosity (\(\mu\))

\(M/(LT)\)

ViscosityEddyKinematic

Kinematic eddy viscosity (\(\nu_t\))

\(L^{2}/T\)

ViscosityEddy

Eddy viscosity (\(\mu_t\))

\(M/(LT)\)

ThermalConductivity

Thermal conductivity coefficient (\(k\))

\(ML/(T^{3}\Theta)\)

PowerLawExponent

Power-law exponent (\(n\)) in molecular viscosity or thermal conductivity model

\(-\)

SutherlandLawConstant

Sutherland’s Law constant (\(T_{s}\)) in molecular viscosity or thermal conductivity model

\(\Theta\)

TemperatureReference

Reference temperature (\(T_{ref}\)) in molecular viscosity or thermal conductivity model

\(\Theta\)

ViscosityMolecularReference

Reference viscosity (\(\mu_{ref}\)) in molecular viscosity model

\(M/(LT)\)

ThermalConductivityReference

Reference thermal conductivity (\(k_{ref}\)) in thermal conductivity model

\(ML/(T^{3}\Theta)\)

IdealGasConstant

Ideal gas constant (\(R = c_p − c_v\))

\(L^{2}/(T^{2}\Theta)\)

SpecificHeatPressure

Specific heat at constant pressure (\(c_p\))

\(L^{2}/(T^{2}\Theta)\)

SpecificHeatVolume

Specific heat at constant volume (\(c_v\))

\(L^{2}/(T^{2}\Theta)\)

ReynoldsStressXX

Reynolds stress \(−\rho (u′u′)_{ave}\)

\(M/(LT^{2})\)

ReynoldsStressXY

Reynolds stress \(−\rho (u′v′)_{ave}\)

\(M/(LT^{2})\)

ReynoldsStressXZ

Reynolds stress \(−\rho (u′w′)_{ave}\)

\(M/(LT^{2})\)

ReynoldsStressYY

Reynolds stress \(−\rho (v′v′)_{ave}\)

\(M/(LT^{2})\)

ReynoldsStressYZ

Reynolds stress \(−\rho (v′w′)_{ave}\)

\(M/(LT^{2})\)

ReynoldsStressZZ

Reynolds stress \(−\rho (w′w′)_{ave}\)

\(M/(LT^{2})\)

MolecularWeightSymbol

Molecular weight for species Symbol

\(-\)

HeatOfFormationSymbol

Heat of formation per unit mass for species Symbol

\(L^{2}/T^{2}\)

FuelAirRatio

Fuel/air mass ratio

\(-\)

ReferenceTemperatureHOF

Reference temperature for the heat of formation

\(\Theta\)

MassFractionSymbol

Mass of species Symbol, divided by total mass

\(-\)

LaminarViscositySymbol

Laminar viscosity of species Symbol

\(M/(LT)\)

ThermalConductivitySymbol

Thermal conductivity of species Symbol

\(ML/(T^{3}\Theta)\)

EnthalpyEnergyRatio

The ratio \(\beta = h / e = \int_{T_{ref}}^{T} c_{p} dT / \int_{T_{ref}}^{T} c_{v} dT\) for the mixture

\(-\)

CompressibilityFactor

The gas constant of the mixture divided by the freestream gas constant, \(Z = R / R_{\infty}\)

\(-\)

VibrationalElectronEnergy

Vibrational-electronic excitation energy per unit mass

\(L^{2}/T^{2}\)

HeatOfFormation

Heat of formation per unit mass for the entire mixture, \(H = \sum_{i=1}^{n} Y_i H_i\), where \(n\) is the number of species, \(Y_i\) is the mass fraction of species \(i\), and \(H_i\) is the heat of formation for species \(i\) at the reference temperature ReferenceTemperatureHOF. This requires that ReferenceTemperatureHOF be specified using the ChemicalKineticsModel data structure.

\(L^{2}/T^{2}\)

VibrationalElectronTemperature

Vibrational electron temperature

\(\Theta\)

SpeciesDensitySymbol

Density of species Symbol

\(M/L^{3}\)

MoleFractionSymbol

Number of moles of species Symbol divided by the total number of moles for all species

\(-\)

Voltage

Voltage

\(ML^{2}/TI\)

ElectricFieldX

x-component of electric field vector

\(ML/TI\)

ElectricFieldY

y-component of electric field vector

\(ML/TI\)

ElectricFieldZ

z-component of electric field vector

\(ML/TI\)

MagneticFieldX

x-component of magnetic field vector

\(I/L\)

MagneticFieldY

y-component of magnetic field vector

\(I/L\)

MagneticFieldZ

z-component of magnetic field vector

\(I/L\)

CurrentDensityX

x-component of current density vector

\(I/L^{2}\)

CurrentDensityY

y-component of current density vector

\(I/L^{2}\)

CurrentDensityZ

z-component of current density vector

\(I/L^{2}\)

ElectricConductivity

Electrical conductivity

\(ML/T^{3}I^{2}\)

LorentzForceX

x-component of Lorentz force vector

\(ML/T^{2}\)

LorentzForceY

y-component of Lorentz force vector

\(ML/T^{2}\)

LorentzForceZ

z-component of Lorentz force vector

\(ML/T^{2}\)

JouleHeating

Joule heating

\(ML^{2}/T^{2}\)

LengthReference

Reference length \(L\)

\(L\)

A3 Turbulence Model Solution

This section lists data-name identifiers for typical Reynolds-averaged Navier-Stokes turbulence model variables. Turbulence model solution quantities and model constants present a particularly difficult nomenclature problem - to be precise we need to identify both the variable and the model (and version) that it comes from. The list in the following table falls short in this respect.

Data-Name Identifiers for Typical Turbulence Models

Data-Name Identifier

Description

Units

TurbulentDistance

Distance to nearest wall

\(L\)

TurbulentEnergyKinetic

\(k = [(u′u′)_{ave} + (v′v′)_{ave} + (w′w′)_{ave}] / 2\)

\(L^{2}/T^{2}\)

TurbulentDissipation

\(\epsilon\)

\(L^{2}/T^{3}\)

TurbulentDissipationRate

\(\epsilon/k = \omega\)

\(T^{−1}\)

TurbulentBBReynolds

Baldwin-Barth one-equation model \(R_T\)

\(-\)

TurbulentSANuTilde

Spalart-Allmaras one-equation model \(\nu_{SA}\)

\(L^{2}/T\)

A4 Nondimensional Parameters

CFD codes are rich in nondimensional governing parameters, such as Mach number and Reynolds number, and nondimensional flowfield coefficients, such as pressure coefficient. The problem with these parameters is that the definitions and conditions at which they are evaluated can vary from code to code. Reynolds number is particularly notorious in this respect.

These parameters have posed a difficult dilemma for us. Either we impose a rigid definition for each and force all database users to abide by it, or we develop some methodology for describing the particular definition that the user is employing. The first limits applicability and flexibility, and the second adds complexity. We have opted for the second approach, but we include only enough information about the definition of each parameter to allow for conversion operations. For example, the Reynolds number includes velocity, length, and kinematic viscosity scales in its definition (i.e., \(Re = VLR/\nu\)). The database description of Reynolds number includes these different scales. By providing these “definition components”, any code that reads Reynolds number from the database can transform its value to an appropriate internal definition. These definition components are identified by appending a “_” to the data-name identifier of the parameter.

Definitions for nondimensional flowfield coefficients follow: the pressure coefficient is defined as,

\[c_p = (p − p_{ref}) / (\rho_{ref} q^{2}_{ref} / 2)\]

where \(\rho_{ref}q^{2}_{ref} / 2\) is the dynamic pressure evaluated at some reference condition, and \(p_{ref}\) is some reference pressure. The skin friction coefficient is,

\[\mathbf{c_f} = \mathbf{\tau} / (\rho_{ref} q^{2}_{ref} / 2)\]

where \(\mathbf{\tau}\) is the shear stress or skin friction vector. Usually, \(\mathbf{\tau}\) is evaluated at the wall surface.

The data-name identifiers defined for nondimensional governing parameters and flowfield coefficients are listed in the following table.

Data-Name Identifiers for Nondimensional Parameters

Data-Name Identifier

Description

Units

Mach

Mach number: \(M = q/c\)

\(-\)

Mach_Velocity

Velocity scale (\(q\))

\(L/T\)

Mach_VelocitySound

Speed of sound scale (\(c\))

\(L/T\)

RotatingMach

Mach number relative to rotating frame: \(M_r = q_r /c\)

\(-\)

Reynolds

Reynolds number: \(Re = VL_{R}/\nu\)

\(-\)

Reynolds_Velocity

Velocity scale (\(V\))

\(L/T\)

Reynolds_Length

Length scale (\(L_R\))

\(L\)

Reynolds_ViscosityKinematic

Kinematic viscosity scale (\(\nu\))

\(L^{2}/T\)

Prandtl

Prandtl number: \(Pr = \mu c_p/k\)

\(-\)

Prandtl_ThermalConductivity

Thermal conductivity scale (\(k\))

\(ML/(T^{3}\Theta)\)

Prandtl_ViscosityMolecular

Molecular viscosity scale (\(\mu\))

\(M/(LT)\)

Prandtl_SpecificHeatPressure

Specific heat scale (\(c_p\))

\(L^{2}/(T^{2}\Theta)\)

PrandtlTurbulent

Turbulent Prandtl number, \(\rho \nu_t c_p/k_t\)

\(-\)

SpecificHeatRatio

Specific heat ratio: \(\gamma = c_p/c_v\)

\(-\)

SpecificHeatRatio_Pressure

Specific heat at constant pressure (\(c_p\))

\(L^{2}/(T^{2}\Theta)\)

SpecificHeatRatio_Volume

Specific heat at constant volume (\(c_v\))

\(L^{2}/(T^{2}\Theta)\)

CoefPressure

\(c_p\)

\(-\)

CoefSkinFrictionX

\(\mathbf{c_f} \cdot \mathbf{e}_x\)

\(-\)

CoefSkinFrictionY

\(\mathbf{c_f} \cdot \mathbf{e}_y\)

\(-\)

CoefSkinFrictionZ

\(\mathbf{c_f} \cdot \mathbf{e}_z\)

\(-\)

Coef_PressureDynamic

\(\rho_{ref} q^{2}_{ref} / 2\)

\(M/(LT^{2})\)

Coef_PressureReference

\(p_{ref}\)

\(M/(LT^{2})\)

A5 Characteristics and Riemann Invariants Based on 1D flow

Boundary condition specification for inflow/outflow or farfield boundaries often involves Riemann invariants or characteristics of the linearized inviscid flow equations. For an ideal compressible gas, these are typically defined as follows: Riemann invariants for an isentropic 1-D flow are,

\[[\partial/\partial t + (u \pm c) \partial/\partial x] [u \pm 2c / (\gamma − 1)] = 0\]

Characteristic variables for the 3-D Euler equations linearized about a constant mean flow are,

\[[\partial /\partial t + \Delta_{n} \partial/\partial x] W′_{n}(x,t) = 0 \;\;\;\;\;\; n = 1, 2, ..., 5\]

where the characteristics and corresponding characteristic variables are

Characteristic

\(\Delta_n\)

\(W'_n\)

Entropy

\(u\)

\(p′ − \rho′c^{2}\)

Vorticity

\(u\)

\(v′\)

Vorticity

\(u\)

\(w′\)

Acoustic

\(u \pm c\)

\(p′ \pm u′ \rho c\)

Primed quantities are linearized perturbations, and the remainder are evaluated at the mean flow. The only non-zero mean-flow velocity component is \(u\). The data-name identifiers defined for Riemann invariants and characteristic variables are listed in the following table.

Data-Name Identifiers for Characteristics and Riemann Invariants

Data-Name Identifier

Description

Units

RiemannInvariantPlus

\(u + 2c / (\gamma − 1)\)

\(L/T\)

RiemannInvariantMinus

\(u − 2c / (\gamma − 1)\)

\(L/T\)

CharacteristicEntropy

\(p′ − \rho′ c^{2}\)

\(M/(L T^{2})\)

CharacteristicVorticity1

\(v′\)

\(L/T\)

CharacteristicVorticity2

\(w′\)

\(L/T\)

CharacteristicAcousticPlus

\(p′ + u′\rho c\)

\(M/(L T^{2})\)

CharacteristicAcousticMinus

\(p′ − u′\rho c\)

\(M/(L T^{2})\)

A6 Forces and Moments

Conventions for data-name identifiers for forces and moments are defined in this section. Ideally, forces and moments should be attached to geometric components or less ideally to surface grids. Currently, the standard mechanism for storing forces and moments is generally through the ConvergenceHistory_t node, either attached to the entire configuration (under CGNSBase_t) or attached to a zone (under Zone_t).

Given a differential force \(f\) (i.e., a force per unit area), the force integrated over a surface is,

\[\mathbf{F} = F_x \mathbf{e}_x + F_y \mathbf{e}_y + F_z \mathbf{e}_z = \int f dA\]

where \(\mathbf{e}_x\), \(\mathbf{e}_y\) and \(\mathbf{e}_z\) are the unit vectors in the x, y and z directions, respectively. The moment about a point \(r_{0}\) integrated over a surface is,

\[\mathbf{M} = M_x \mathbf{e}_x + M_y \mathbf{e}_y + M_z \mathbf{e}_z = \int (\mathbf{r} − \mathbf{r}_{0}) \times f dA\]

Lift and drag components of the integrated force are,

\[L = \mathbf{F} \cdot \mathbf{L} \;\;\;\;\;\; D = \mathbf{F} \cdot \mathbf{D}\]

where \(\mathbf{L}\) and \(\mathbf{D}\) are the unit vectors in the positive lift and drag directions, respectively.

Lift, drag and moment are often computed in auxiliary coordinate frames (e.g., wind axes or stability axes). We introduce the convention that lift, drag and moment are computed in the \((\xi, \eta, \zeta)\) coordinate system. Positive drag is assumed parallel to the \(\xi\)-direction (i.e., \(\mathbf{D} = \mathbf{e}_\xi\)); and positive lift is assumed parallel to the \(\eta\)-direction (i.e., \(\mathbf{L} = \mathbf{e}_\eta\)). Thus, forces and moments defined in this auxiliary coordinate system are,

\[\begin{split}L = \mathbf{F} \cdot \mathbf{e}_{\eta} \;\;\;\;\;\;\; D = \mathbf{F} \cdot \mathbf{e}_\xi \\ \mathbf{M} = M_\xi \mathbf{e}_\xi + M_\eta \mathbf{e}_\eta + M_\zeta \mathbf{e}_\zeta = \int (\mathbf{r} − \mathbf{r}_0) \times f dA\end{split}\]

Lift, drag and moment coefficients in 3-D are defined as,

\[C_{L} = L / (\rho_{ref}q^{2}_{ref}S_{ref} / 2) \;\;\;\;\;\; C_{D} = D / (\rho_{ref}q^{2}_{ref}S_{ref} / 2) \;\;\;\;\;\; \mathbf{C_{M}} = \mathbf{M} / (\rho_{ref}q^{2}_{ref}c_{ref}S{ref} / 2)\]

where \(\rho_{ref}q^{2}_{ref} / 2\) is a reference dynamic pressure, \(S_{ref}\) is a reference area, and \(c_{ref}\) is a reference length. For a wing, \(S_{ref}\) is typically the wing area and \(c_{ref}\) is the mean aerodynamic chord. In 2-D, the sectional force coefficients are,

\[c_{l} = L′ / (\rho_{ref}q^{2}_{ref}c_{ref} / 2) \;\;\;\;\;\; c_{d} = D′ / (\rho_{ref}q^{2}_{ref}c_{ref} / 2) \;\;\;\;\;\; \mathbf{c_m} = \mathbf{M'} / (\rho_{ref}q^{2}_{ref} c^{2}_{ref} / 2)\]

where the forces are integrated along a contour (e.g., an airfoil cross-section) rather than a surface.

The data-name identifiers and definitions provided for forces and moments and their associated coefficients are listed in the table below. For coefficients, the dynamic pressure and length scales used in the normalization are provided.

Data-Name Identifiers for Forces and Moments

Data-Name Identifier

Description

Units

ForceX

\(F_x = \mathbf{F} \cdot \mathbf{e}_x\)

\(ML/T^{2}\)

ForceY

\(F_y = \mathbf{F} \cdot \mathbf{e}_y\)

\(ML/T^{2}\)

ForceZ

\(F_z = \mathbf{F} \cdot \mathbf{e}_z\)

\(ML/T^{2}\)

ForceR

\(F_r = \mathbf{F} \cdot \mathbf{e}_r\)

\(ML/T^{2}\)

ForceTheta

\(F_\theta = \mathbf{F} \cdot \mathbf{e}_\theta\)

\(ML/T^{2}\)

ForcePhi

\(F_\phi = \mathbf{F} \cdot \mathbf{e}_\phi\)

\(ML/T^{2}\)

Lift

\(L\) or \(L'\)

\(ML/T^{2}\)

Drag

\(D\) or \(D'\)

\(ML/T^{2}\)

MomentX

\(M_x = \mathbf{M} \cdot \mathbf{e}_x\)

\(ML^{2}/T^{2}\)

MomentY

\(M_y = \mathbf{M} \cdot \mathbf{e}_y\)

\(ML^{2}/T^{2}\)

MomentZ

\(M_z = \mathbf{M} \cdot \mathbf{e}_z\)

\(ML^{2}/T^{2}\)

MomentR

\(M_r = \mathbf{M} \cdot \mathbf{e}_r\)

\(ML^{2}/T^{2}\)

MomentTheta

\(M_\theta = \mathbf{M} \cdot \mathbf{e}_\theta\)

\(ML^{2}/T^{2}\)

MomentPhi

\(M_\phi = \mathbf{M} \cdot \mathbf{e}_\phi\)

\(ML^{2}/T^{2}\)

MomentXi

\(M_\xi = \mathbf{M} \cdot \mathbf{e}_\xi\)

\(ML^{2}/T^{2}\)

MomentEta

\(M_\eta = \mathbf{M} \cdot \mathbf{e}_\eta\)

\(ML^{2}/T^{2}\)

MomentZeta

\(M_\zeta = \mathbf{M} \cdot \mathbf{e}_\zeta\)

\(ML^{2}/T^{2}\)

Moment_CenterX

\(x_0 = \mathbf{r}_0 \cdot \mathbf{e}_x\)

\(L\)

Moment_CenterY

\(y_0 = \mathbf{r}_0 \cdot \mathbf{e}_y\)

\(L\)

Moment_CenterZ

\(z_0 = \mathbf{r}_0 \cdot \mathbf{e}_z\)

\(L\)

CoefLift

\(C_L\) or \(c_l\)

\(-\)

CoefDrag

\(C_D\) or \(c_d\)

\(-\)

CoefMomentX

\(\mathbf{C_M} \cdot \mathbf{e}_x\) or \(\mathbf{c_m} \cdot e_x\)

\(-\)

CoefMomentY

\(\mathbf{C_M} \cdot \mathbf{e}_y\) or \(\mathbf{c_m} \cdot e_y\)

\(-\)

CoefMomentZ

\(\mathbf{C_M} \cdot \mathbf{e}_z\) or \(\mathbf{c_m} \cdot e_z\)

\(-\)

CoefMomentR

\(\mathbf{C_M} \cdot \mathbf{e}_r\) or \(\mathbf{c_m} \cdot e_r\)

\(-\)

CoefMomentTheta

\(\mathbf{C_M} \cdot \mathbf{e}_\theta\) or \(\mathbf{c_m} \cdot \mathbf{e}_\theta\)

\(-\)

CoefMomentPhi

\(\mathbf{C_M} \cdot \mathbf{e}_\phi\) or \(\mathbf{c_m} \cdot \mathbf{e}_\phi\)

\(-\)

CoefMomentXi

\(\mathbf{C_M} \cdot \mathbf{e}_\xi\) or \(\mathbf{c_m} \cdot \mathbf{e}_\xi\)

\(-\)

CoefMomentEta

\(\mathbf{C_M} \cdot \mathbf{e}_\eta\) or \(\mathbf{c_m} \cdot \mathbf{e}_\eta\)

\(-\)

CoefMomentZeta

\(\mathbf{C_M} \cdot \mathbf{e}_\zeta\) or \(\mathbf{c_m} \cdot \mathbf{e}_\zeta\)

\(-\)

Coef_PressureDynamic

\(\rho_{ref} q^{2}_{ref} / 2\)

\(M/(LT^{2})\)

Coef_Area

\(S_{ref}\)

\(L^{2}\)

Coef_Length

\(c_{ref}\)

\(L\)

A7 Time-Dependant flows

Data-name identifiers related to time-dependent flow include those associated with the storage of grid coordinates and flow solutions as a function of time level or iteration. Also included are identifiers for storing information defining both rigid and arbitrary (i.e., deforming) grid motion.

Data-Name Identifiers for Time-Dependent Flow

Data-Name Identifier

Data Type

Description

Units

TimeValues

real

Time values

\(T\)

IterationValues

int

Iteration values

\(-\)

NumberOfZones

int

Number of zones used for each recorded step

\(-\)

NumberOfFamilies

int

Number of families used for each recorded step

\(-\)

ZonePointers

char

Names of zones used for each recorded step

\(-\)

FamilyPointers

char

Names of families used for each recorded step

\(-\)

RigidGridMotionPointers

char

Names of RigidGridMotion structures used for each recorded step for a zone

\(-\)

ArbitraryGridMotionPointers

char

Names of ArbitraryGridMotion structures used for each recorded step for a zone

\(-\)

GridCoordinatesPointers

char

Names of GridCoordinates structures used for each recorded step for a zone

\(-\)

FlowSolutionPointers

char

Names of FlowSolution structures used for each recorded step for a zone

\(-\)

OriginLocation

real

Physical coordinates of the origin before and after a rigid grid motion

\(L\)

RigidRotationAngle

real

Rotation angles about each axis of the translated coordinate system for rigid grid motion

\(\alpha\)

RigidVelocity

real

Grid velocity vector of the origin translation for rigid grid motion

\(L/T\)

RigidRotationRate

real

Rotation rate vector about the axis of the translated coordinate system for rigid grid motion

\(\alpha /T\)

GridVelocityX

real

\(x\)-component of grid velocity

\(L/T\)

GridVelocityY

real

\(y\)-component of grid velocity

\(L/T\)

GridVelocityZ

real

\(z\)-component of grid velocity

\(L/T\)

GridVelocityR

real

\(r\)-component of grid velocity

\(L/T\)

GridVelocityTheta

real

\(\theta\)-component of grid velocity

\(\alpha /T\)

GridVelocityPhi

real

\(\phi\)-component of grid velocity

\(\alpha /T\)

GridVelocityXi

real

\(\xi\)-component of grid velocity

\(L/T\)

GridVelocityEta

real

\(\eta\)-component of grid velocity

\(L/T\)

GridVelocityZeta

real

\(\zeta\)-component of grid velocity

\(L/T\)