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.
The table below lists the reference quantities used throughout Flow360 and how to access them via the Python API. Here, project is the cloud asset containing the case, and params is the SimulationParams object (for a completed case: case.params). See the Python API guide for details.
Variable |
Definition |
SI unit |
Python API access |
|---|---|---|---|
\(L_{gridUnit}\) |
Physical length per mesh unit (e.g. if the mesh is in feet, \(L_{gridUnit} = 0.3048\;\text{m}\)) |
m |
project.length_unit
|
\(C_\infty\) |
Speed of sound (freestream) |
m/s |
case.params.operating_condition \
.thermal_state.speed_of_sound
|
\(\rho_\infty\) |
Density (freestream) |
kg/m³ |
case.params.operating_condition \
.thermal_state.density
|
\(\mu_\infty\) |
Dynamic viscosity (freestream) |
N·s/m² |
case.params.operating_condition \
.thermal_state.dynamic_viscosity
|
\(p_\infty\) |
Static pressure of freestream. Note \(p_\infty\) is used only for the pressure coefficient \(C_p\), not for general pressure non-dimensionalization (see Usage of reference values for non-dimensional inputs in Flow360). |
\(\text{N}/\text{m}^2\) |
case.params.operating_condition \
.thermal_state.pressure
|
\(T_\infty\) |
Temperature (freestream) |
K |
case.params.operating_condition \
.thermal_state.temperature
|
\(U_\text{ref}\) |
Reference velocity (used for force and moment coefficients) |
m/s |
case.params.reference_velocity
|
\(A_\text{ref}\) |
Reference area |
m² |
case.params.reference_geometry \
.area
|
\(L_\text{ref}\) |
Moment length (can be a 3-component vector) |
m |
case.params.reference_geometry \
.moment_length
|
Reference Velocity Scaling#
We introduce the reference velocity scaling \(U_\text{scale}\), which is the reference velocity used for velocity nondimensionalization in many Flow360 variables (such as velocity fields, heat flux, volumetric heat sources, and angular speeds). It also sets the pressure reference: pressure is non-dimensionalized by \(\rho_\infty U_\text{scale}^2\).
AerospaceCondition: \(U_\text{scale} = C_\infty\) (speed of sound)LiquidOperatingCondition: \(U_\text{scale}\) isreference_velocity(which corresponds toreference_velocity_magnitudeif set, otherwisevelocity_magnitude)
if operating_condition.type_name == "LiquidOperatingCondition":
U_scale = operating_condition.reference_velocity
else: # AerospaceCondition
U_scale = operating_condition.thermal_state.speed_of_sound
Note
It is important to distinguish \(U_\text{scale}\) from \(U_\text{ref}\) (see Variables used in non-dimensionalization in Flow360). \(U_\text{scale}\) non-dimensionalizes solver fields: velocity by \(U_\text{scale}\), pressure by \(\rho_\infty U_\text{scale}^2\), heat flux by \(\rho_\infty U_\text{scale}^3\). \(U_\text{ref}\) non-dimensionalizes force and moment coefficients (\(C_L\), \(C_D\), \(C_F\), \(C_M\)). Mixing them up produces incorrect conversions.
Grid Unit Length#
\(L_{gridUnit}\) scales all length-related quantities. The mesh can use any unit; L_{gridUnit} for common mesh units lists common values.
Mesh unit |
\(L_{gridUnit}\) |
|---|---|
metres [m] |
1.0 m |
millimetres [mm] |
0.001 m |
feet [ft] |
0.3048 m |
inches [in] |
0.0254 m |
unit chords [c = 1.0] |
value of c_ref in metres |
The following pages explain how these reference quantities apply to:
Inputs — non-dimensionalizing user-supplied values (angular speed, heat flux, …)
Outputs — converting solver fields back to physical units
Force & moment coefficients — converting \(C_L\), \(C_D\), \(C_M\), and raw BET/AD/PM forces to Newtons and Newton-meters