.. _knowledge_base_volumeZones: :ref:`volumeZones ` ======================================================= :code:`referenceFrame` --------------------------------------------- The :code:`referenceFrame` section describes the parameters for moving volume zones. :code:`axisOfRotation` ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ The rotation of a rotating volume zone follows the right hand rule. The fingers follow the spinning of the rotating volume zone and the thumb points to the :code:`axisOfRotation`. Left handed rotations can be simulated by entering a negative :code:`omega`. .. grid:: 2 .. grid-item:: :columns: 6 :margin: auto .. figure:: ../BETDisks/Figures/left_hand_rule.svg :width: 80% :align: center .. grid-item:: :columns: 6 :margin: auto .. figure:: ../BETDisks/Figures/right_hand_rule.svg :width: 80% :align: center :code:`omega` ^^^^^^^^^^^^^^^^^^ For convenience, there are two options for prescribing the nondimensional rotation speed in the Flow360.json file. Users can either input :code:`omegaRadians` or :code:`omegaDegrees` according to the units of their physical rotation speed :math:`\Omega`\: .. math:: \text{omegaRadians} = \Omega \ \text{(rad/s)} \cdot \frac{L_\text{gridUnit}}{C_\infty} \text{omegaDegrees} = \Omega \ \text{(deg/s)} \cdot \frac{L_\text{gridUnit}}{C_\infty} See this :ref:`example ` showing how to obtain nondimensional :code:`omega` from RPM and this :ref:`tutorial ` for an unsteady isolated rotor case using a rotating volume zone. .. [TODO] Once Qiqi and I figure out the best-practice for the dynamic derivatives, I will add more info on setting up thetaRadians and thetaDegrees .. _knowledge_base_volumeZones_parentVolumeName: :code:`parentVolumeName` ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ The :code:`parentVolumeName` is required for nested rotational volume zones. If zoneA is a rotational zone and zoneB rotates relative to zoneA, zoneB is treated as a nested rotational volume zone. In such a scenario, zoneB's frame of reference is built upon zoneA's frame of reference, so in zoneB's configuration, the :code:`parentVolumeName:"zoneA"` is required in the :code:`referenceFrame`. .. caution:: If a volume zone rotates with respect to the inertial frame of reference, the :code:`parentVolumeName` should not be specified in its :code:`referenceFrame`. An example can be found at :ref:`XV15 rotor tutorial `. Any volume zone, assigned as parent of another volume zone, has to be a rotational volume zone, otherwise the validation during case submission will report errors. In the following configuration, the frame of reference of :code:`FLUID-MIDDLE-BLOCK` rotates with respect to the inertial frame of reference, so the :code:`parentVolumeName` is not specified. The frame of reference of :code:`FLUID-INNER-BLOCK` rotates with respect to the :code:`FLUID-MIDDLE-BLOCK`'s frame of reference, so its :code:`parentVolumeName` is required to be specified as :code:`FLUID-MIDDLE-BLOCK`. .. literalinclude:: ../../../solverConfiguration/Files/volumeZonesExample_2.json :linenos: Miscellaneous ^^^^^^^^^^^^^^^^^^^^ .. attention:: Flow360 does not support simulations containing two adjacent volume zones, which are both stationary. If you want to do simulations in such a scenario, a :code:`referenceFrame` with :code:`omega:0` can be assigned to either of them.