RCAIDE.Library.Methods.Aerodynamics.Common.Drag.cooling_drag

cooling_drag#

cooling_drag(state, settings, geometry)[source]#

Computes cooling drag coefficient based on heat exchanger operation and air flow through cooling ducts.

Parameters:
  • state (Data) –

    Flight conditions and energy state containing:
    • conditions.freestream.densityfloat

      Freestream air density [kg/m³]

    • conditions.freestream.velocityfloat

      Freestream velocity [m/s]

    • conditions.freestream.pressurefloat

      Freestream static pressure [Pa]

    • conditions.energy.coolant_linesdict
      Dictionary of coolant line results indexed by coolant line tag
      • coolant_line_tagdict
        Dictionary of heat exchanger results indexed by heat exchanger tag
        • heat_exchanger_tagData
          Heat exchanger operation results containing:
          • air_mass_flow_ratefloat

            Mass flow rate of air through heat exchanger [kg/s]

          • pressure_diff_airfloat

            Pressure differential across heat exchanger [Pa]

  • settings (dict) – Analysis settings and parameters

  • geometry (Data) –

    Vehicle geometry containing:
    • reference_areafloat

      Reference area for drag coefficient calculation [m²]

    • networkslist
      List of propulsion networks containing coolant lines
      • coolant_lineslist
        List of coolant line objects with heat exchangers
        • tagstr

          Unique identifier for the coolant line

        • heat_exchangerslist
          List of heat exchanger objects containing:
          • tagstr

            Unique identifier for the heat exchanger

          • atmospheric_air_inlet_to_outlet_area_ratiofloat

            Ratio of inlet to outlet area for atmospheric air [unitless]

          • duct_lossesfloat

            Duct efficiency factor accounting for losses [unitless]

          • minimum_air_speedfloat

            Minimum air speed required for heat exchanger operation [m/s]

Returns:

Results are stored in state.conditions.aerodynamics.coefficients.drag.cooling.total

Return type:

None

Notes

This function calculates the drag penalty associated with cooling system operation, including the momentum deficit caused by air flow through heat exchangers and the pressure forces on duct surfaces. The calculation accounts for variable inlet areas based on required cooling flow rates.

Major Assumptions
  • Density across the duct is equal to freestream density

  • Inlet area varies based on required cooling flow rate

  • Duct losses are characterized by a single efficiency factor

  • Heat exchanger operation ceases below minimum air speed

Theory

The cooling drag is calculated from momentum and pressure forces:

\(F_{cooling} = \dot{m}_{air}(V_{exit} \eta_{duct} - V_{\infty}) + A_{outlet} \eta_{duct}(P_{exit} - P_{\infty})\)

where:
  • \(\dot{m}_{air}\) is the air mass flow rate through the heat exchanger [kg/s]

  • \(V_{exit}\) is the exit velocity [m/s]

  • \(V_{\infty}\) is the freestream velocity [m/s]

  • \(\eta_{duct}\) is the duct efficiency factor

  • \(A_{outlet}\) is the outlet area [m²]

  • \(P_{exit}\) is the exit pressure [Pa]

  • \(P_{\infty}\) is the freestream pressure [Pa]

The inlet area is determined from mass flow requirements:

\(A_{inlet} = \frac{\dot{m}_{air}}{\rho_{\infty} V_{\infty}}\)

The exit velocity and pressure are calculated as:

\(V_{exit} = \frac{\dot{m}_{air}}{\rho_{\infty} A_{outlet}}\)

\(P_{exit} = \frac{1}{2}\rho_{\infty}[(1+\eta_e)V_{exit}^2 - V_{\infty}^2] + P_{\infty} - \Delta P_{HEX}\)

where \(\eta_e = 0.5(1 - A_{outlet}/A_{inlet})\) is the expansion efficiency.

The cooling drag coefficient is:

\(C_{D,cooling} = \frac{F_{cooling}}{\frac{1}{2}\rho_{\infty} V_{\infty}^2 S_{ref}}\)

Definitions

‘Cooling Drag’

Additional drag caused by the momentum deficit and pressure forces associated with air flow through cooling systems.

‘Duct Losses’

Efficiency factor accounting for frictional and form losses in the cooling air ductwork.

References

[1] Brelje, B., Jasa, J., Martins, J., & Gray, J. (2019). “Development of a conceptual-level thermal management system design capability in OpenConcept.”