Introduction#
Non-dimensionalization is essential for the Flow360 solver to reduce the number of variables and helps to provide better understanding of the underlying physics. A non-dimensional variable is obtained by dividing its dimensional counterpart by an appropriately selected constant reference value like Eq.(8.1.1).
In the table below, we show some common dimensional variables used as reference in Flow360 and how to access them through Python API. Note that project
is the cloud asset where you run the case
, and params
is the SimulationParams
object defined before submitting the case. For a completed case
, its SimulationParams
can be accessed by case.params
. More details about how to use Python API can be found here.
Reference Variable |
Definition |
SI unit |
How to access in Python API |
---|---|---|---|
\(L_{gridUnit}\) |
Physical length represented by unit length in the given mesh file, e.g. If your grid is in feet, \(L_{gridUnit}=1 \text{ feet}\)\(=0.3048 \text{ meter}\); If your grid is in millimeters, \(L_{gridUnit}=1 \text{ millimeter}\)\(=0.001 \text{ meter}\). |
\(\text{m}\) |
project.length_unit
|
\(C_\infty\) |
Freestream speed of sound |
\(\text{m}/\text{s}\) |
case.params.operating_condition \
.thermal_state.speed_of_sound
|
\(\rho_\infty\) |
Density of freestream |
\(\text{kg}/\text{m}^3\) |
case.params.operating_condition \
.thermal_state.density
|
\(\mu_\infty\) |
Dynamic viscosity of freestream |
\(\text{N} \cdot \text{s}/\text{m}^2\) |
case.params.operating_condition \
.thermal_state.dynamic_viscosity
|
\(p_\infty\) |
Static pressure of freestream |
\(\text{N}/\text{m}^2\) |
case.params.operating_condition \
.thermal_state.pressure
|
\(T_\infty\) |
Temperature of freestream |
\(\text{K}\) |
case.params.operating_condition \
.thermal_state.temperature
|
\(U_\text{ref}\) |
Reference velocity, \(\equiv \text{MachRef}\times C_\infty\) |
\(\text{m}/\text{s}\) |
case.params.operating_condition \
.velocity_magnitude
# If reference_velocity_magnitude is provided
# when defining operating_condition, use
case.params.operating_condition \
.reference_velocity_magnitude
|
\(A_\text{ref}\) |
Reference area |
\(\text{m}^2\) |
case.params.reference_geometry \
.area
|
\(L_\text{ref}\) |
Moment length |
\(\text{m}\) |
case.params.reference_geometry \
.moment_length
|
In particular, the \(L_{gridUnit}\) value is used to scale all length inputs. This allows the user to construct a mesh in any desired unit. Typical units are: meters, millimeters, feet, inches or reference chord lengths. However, care must be taken when calculating input values such as Reynolds number or rotational speed, omega, to ensure that the same solution is obtained across different mesh scales. The \(L_{gridUnit}\) values for commonly used mesh units are shown in Table 8.1.2
Mesh Unit Length |
\(L_{gridUnit}\) |
---|---|
metres [m] |
1.0 m |
millimetres [mm] |
1 mm = 0.001 m |
feet [ft] |
1 ft = 0.3048 m |
inches [in] |
1 in = 0.0254 m |
unit chords [c=1.0] |
1 c_ref = (value of c_ref in metres) |
For demonstration purpose, we assume grid unit \(L_{gridUnit} = 1\;\text{m}\). The operating condition is defined as \(T_\infty = 288.15\;\text{K}\), \(p_\infty = 1.225\;\text{kg}/\text{m}^3\), \(U_\text{ref} = 10\;\text{m}/\text{s}\), the inflow angle of attack \(\alpha\) = 15 °, and the side slip angle \(\beta\) = 0 °. The reference geometry is defined with \(A_\text{ref} = 1\;\text{m}^2\), \(L_\text{ref}=(1,1,1)\;\text{m}\), and moment center at \((0,0,0)\;\text{m}\). The operating condition and reference geometry are set up with AerospaceCondition
and ReferenceGeometry
as follows,
operating_condition = fl.AerospaceCondition(
thermal_state=fl.ThermalState(
density=1.225 * fl.u.kg / fl.u.m**3,
temperature=288.15 * fl.u.K
),
alpha=15 * fl.u.deg,
beta=0 * fl.u.deg,
velocity_magnitude=10 * fl.u.m / fl.u.s,
)
reference_geometry = fl.ReferenceGeometry(
moment_center=(0, 0, 0) * fl.u.m,
moment_length=(1, 1, 1) * fl.u.m,
area=1.0 * fl.u.m**2
)
In the following sections, we will present how to use these dimensional values as reference to non-dimensionalize input variables, postprocess output variables and force & moment coefficients.