.. _knowledge_base_BETDisks: :ref:`BETDisks ` ========================================== Steady blade disk solver To use the steady blade disk solver, the :code:`bladeLineChord` needs to be set as 0, which is its default value if omitted. Unsteady blade line solver To use the unsteady blade line solver, :code:`bladeLineChord` has to be a positive value and :code:`initialBladeDirection` also needs to be set. In the :ref:`BETDisks ` section of the Flow360.json, except the :code:`bladeLineChord` and :code:`initialBladeDirection`, other parameters are necessary for both solvers. A case study on the XV-15 rotor using blade element theory can be found at :ref:`XV15 BET Disk `. .. note:: #. In the BETDisks section, all input quantities are nondimensional, except the :code:`twists` and :code:`alphas` (both in degrees). The convention for nondimensional inputs in Flow360 can be found at :ref:`nondim_input`. #. For users of XROTOR and DFDC, we have a translator script that will convert the XROTOR/DFDC inputs in Flow360 BET inputs. Some input parameters related to BET solver in Flow360 are explained: :code:`radius` ---------------- All grid points enclosed by the cylinder defined by "radius", "center" and "axisOfRotation" will have aerodynamic forces imposed on them according to blade element theory. .. _rot_dir_rule: :code:`rotationDirectionRule` ------------------------------- :code:`leftHand` or :code:`rightHand`. It depends on the design of the rotor blades: whether the blades follow curl left hand rule or the curl right hand rule to generate positive thrust. The following 2 figures show the curl left hand rule and curl right hand rule. The fingers follow the spinning of the blades and the thumb points to the thrust direction. By default, it is :code:`rightHand`. .. grid:: 2 .. grid-item:: :columns: 6 :margin: auto .. figure:: Figures/left_hand_rule.svg :width: 80% :align: center .. grid-item:: :columns: 6 :margin: auto .. figure:: Figures/right_hand_rule.svg :width: 80% :align: center .. _bet_axis_rot: :code:`axisOfRotation` ------------------------ It is the direction of your thumb (thrust) described in "rotationDirectionRule". .. _bet_omega: :code:`omega` --------------- The nondimensional rotating speed. It should be positive in most cases, which means the leading edge moves in front and the rotation direction of the blades in BET simulations is consistent with the curling fingers described in "rotationDirectionRule" to generate positive thrust. A negative "omega" means the blades rotate in a reverse direction, hence in an opposite direction to the curling fingers, where the trailing edge moves in front. The following 4 pictures give some examples of different rotationDirectionRule and axisOfRotation with **positive omega**. The curved arrow follows the same direction in which rotor spins. The straight arrow points to the direction of thrust. .. grid:: 2 .. grid-item:: :columns: 6 :margin: auto .. code-block:: JSON "rotationDirectionRule":"leftHand", "axisOfRotation":[0,0,1], "omega": 0.3 .. grid-item:: :columns: 6 :margin: auto .. figure:: Figures/leftHand_thrust_z+.svg :width: 80% :align: center ------------------------------------------------------------- .. grid:: 2 .. grid-item:: :columns: 6 :margin: auto .. code-block:: JSON "rotationDirectionRule":"leftHand", "axisOfRotation":[0,0,-1], "omega": 0.5 .. grid-item:: :columns: 6 :margin: auto .. figure:: Figures/leftHand_thrust_z-.svg :width: 80% :align: center ------------------------------------------------------------- .. grid:: 2 .. grid-item:: :columns: 6 :margin: auto .. code-block:: JSON "rotationDirectionRule":"rightHand", "axisOfRotation":[0,0,1], "omega": 0.5 .. grid-item:: :columns: 6 :margin: auto .. figure:: Figures/rightHand_thrust_z+.svg :width: 80% :align: center ------------------------------------------------------------- .. grid:: 2 .. grid-item:: :columns: 6 :margin: auto .. code-block:: JSON "rotationDirectionRule":"rightHand", "axisOfRotation":[0,0,-1], "omega": 0.5 .. grid-item:: :columns: 6 :margin: auto .. figure:: Figures/rightHand_thrust_z-.svg :width: 80% :align: center ----------------------------------------------------------------- .. note:: In the above 4 examples, if :code:`omega` is negative, the rotor rotates in the opposite direction of what is shown (i.e., the propeller would rotate trailing edge first). .. _chords_and_twists_bet: :code:`chords` and :code:`twists` ------------------------------------ The sampled radial distribution of chord length and geometric twist angle. The "twist" affects the local pitch angle. The "chords" affects the amount of lift and drag imposed on the blade (or fluid). For a radial location where chord=0, there is no lift or drag imposed. It should be noted that for any radial location within the given sampling range, the chord or twist is linearly interpolated between its two neighboring sampled data points. For any radial location beyond the given sampling range, the chord or twist is set to be the nearest sampled chord or twist, i.e. constant extrapolation. Here are 3 examples of the given "chords" and the corresponding radial distribution of chord length: **Example 1.** The root of blade starts at r=20 with chord length=15. The chord shrinks to 10 linearly up to r=60. The chord keeps as 10 for the rest of blade. In this setting, the chord=0 for r in [0,20], there is no aerodynamic lift and drag imposed no matter what the twist angle it has, so this setting fits the rotor without hub. .. grid:: 2 .. grid-item:: :columns: 6 :margin: auto .. literalinclude:: Files/BET_chords_1.json :language: JSON .. grid-item:: :columns: 6 :margin: auto .. figure:: Figures/chords_distribution_1.svg :align: center **Example 2.** The root of blade starts at r=0 with chord=0. The chord expands to 15 linearly up to r=20, then shrinks to 10 linearly up to r=60. The chord keeps as 10 for the rest of blade. This setting could be used for a mesh with the geometry of hub. Because the chord length changes gradually near the root region, there won't be tip vortices in root region. .. grid:: 2 .. grid-item:: :columns: 6 :margin: auto .. literalinclude:: Files/BET_chords_2.json :language: JSON .. grid-item:: :columns: 6 :margin: auto .. figure:: Figures/chords_distribution_2.svg :align: center **Example 3.** This is an example of a **wrong** setting of chords, because the chord length at r=0 is not 0, so the local solidity is infinity, which is not realistic. .. grid:: 2 .. grid-item:: :columns: 6 :margin: auto .. literalinclude:: Files/BET_chords_3.json :language: JSON .. grid-item:: :columns: 6 :margin: auto .. figure:: Figures/chords_distribution_3.svg :align: center .. note:: The number of sampling data points in :code:`chords` and :code:`twists` doesn't have to be the same. They are served as sampled data for interpolation of chord length and twist angle respectively and separately. :code:`nLoadingNodes` ---------------------- This parameter defines the number of loading nodes used to compute the sectional thrust and torque coefficients :math:`C_t` and :math:`C_q`, defined in :ref:`betDiskLoadingNote`. The recommended value is 20 to ensure sufficient resolution of the sectional loading distributions. :code:`thickness` ------------------ The :code:`thickness` parameter defines the thickness of the BET model region. In the volumetric region defined by the product of :code:`thickness` and the disk area, additional source terms are added to the Navier-Stokes equation hence it must be ensured that the disk thickness is less than the refined mesh region enclosing the :code:`BETDisks` model. :code:`bladeLineChord` ---------------------- When the value of :code:`bladeLineChord` is zero, a steady-state BET Disk simulation is performed. If non-zero, this value defines the nondimensional chord for unsteady BET Line simulations. The recommended value is 1-2x the physical mean aerodynamic chord (MAC) of the blade for an unsteady BET Line simulation. .. _TipGap: :code:`tipGap` -------------- The :code:`tipGap` is the nondimensional distance between blade tips and peripheral geometry (e.g., duct, shroud, cowling, nacelle, etc.). The peripheral structures must be effective at reducing blade tip vortices as this parameter affects the tip loss effect. Being close to a fuselage or to another blade is not a cause to enable this parameter, because they won't effectively reduce the tip loss. :code:`tipGap` = 0 means there is no tip loss effect in the solver. It is :math:`\infty` (default) for open propellers.