FP_MULEY_MANGLIK
Overview
The FP_MULEY_MANGLIK function calculates the Darcy friction factor for single-phase flow in Chevron-style plate heat exchangers using the Muley-Manglik correlation. This correlation is particularly useful for engineers designing and analyzing compact heat exchangers where accurate pressure drop predictions are essential.
Plate heat exchangers (PHEs) consist of corrugated metal plates stacked together to form channels for fluid flow. The chevron (herringbone) pattern on the plates enhances heat transfer by promoting turbulent mixing, but also increases pressure drop. The Muley-Manglik correlation accounts for the geometric characteristics of these exchangers, including the chevron angle and the plate enlargement factor.
This implementation uses the fluids library, a comprehensive Python package for fluid dynamics calculations. The correlation is defined as:
f_f = \left[2.917 - 0.1277\beta + 2.016 \times 10^{-3}\beta^2\right] \times \left[5.474 - 19.02\phi + 18.93\phi^2 - 5.341\phi^3\right] \times Re^{-\left[0.2 + 0.0577\sin\left(\frac{\pi\beta}{45} + 2.1\right)\right]}
where \beta is the chevron angle in degrees, \phi is the plate enlargement factor, and Re is the Reynolds number based on the hydraulic diameter of the channels.
The correlation is valid for Reynolds numbers greater than 1000, chevron angles from 30 to 60 degrees, and plate enlargement factors up to 1.5. Unlike some other plate heat exchanger correlations, this model is continuous with no discontinuities between flow regimes. For more details, see the fluids friction documentation.
The original correlation was developed by Muley and Manglik based on experimental data with sinusoidal corrugation profiles, as published in the Journal of Heat Transfer (1999). It is also recommended in Ayub’s comprehensive review of plate heat exchanger correlations in Heat Transfer Engineering (2003).
This example function is provided as-is without any representation of accuracy.
Excel Usage
=FP_MULEY_MANGLIK(Re, chevron_angle, plate_enlargement_factor)
Re(float, required): Reynolds number with respect to the hydraulic diameter of the channels, [-]chevron_angle(float, required): Angle of the plate corrugations with respect to the vertical axis (0-90 degrees)plate_enlargement_factor(float, required): Extra surface area multiplier from corrugations (>1.0), [-]
Returns (float): Darcy friction factor, [-], or error message (str) if input is invalid.
Examples
Example 1: Typical operating conditions
Inputs:
| Re | chevron_angle | plate_enlargement_factor |
|---|---|---|
| 2000 | 45 | 1.2 |
Excel formula:
=FP_MULEY_MANGLIK(2000, 45, 1.2)
Expected output:
1.0881
Example 2: Low chevron angle (30 degrees)
Inputs:
| Re | chevron_angle | plate_enlargement_factor |
|---|---|---|
| 5000 | 30 | 1.25 |
Excel formula:
=FP_MULEY_MANGLIK(5000, 30, 1.25)
Expected output:
0.8496
Example 3: High chevron angle (60 degrees)
Inputs:
| Re | chevron_angle | plate_enlargement_factor |
|---|---|---|
| 3000 | 60 | 1.3 |
Excel formula:
=FP_MULEY_MANGLIK(3000, 60, 1.3)
Expected output:
2.0325
Example 4: Higher Reynolds number with moderate angle
Inputs:
| Re | chevron_angle | plate_enlargement_factor |
|---|---|---|
| 10000 | 50 | 1.15 |
Excel formula:
=FP_MULEY_MANGLIK(10000, 50, 1.15)
Expected output:
0.7177
Python Code
import micropip
await micropip.install(["fluids"])
from fluids.friction import friction_plate_Muley_Manglik as fluids_fp_muley_manglik
def fp_muley_manglik(Re, chevron_angle, plate_enlargement_factor):
"""
Calculate Darcy friction factor for single-phase flow in Chevron-style plate heat exchangers using Muley-Manglik correlation.
See: https://fluids.readthedocs.io/fluids.friction.html#fluids.friction.friction_plate_Muley_Manglik
This example function is provided as-is without any representation of accuracy.
Args:
Re (float): Reynolds number with respect to the hydraulic diameter of the channels, [-]
chevron_angle (float): Angle of the plate corrugations with respect to the vertical axis (0-90 degrees)
plate_enlargement_factor (float): Extra surface area multiplier from corrugations (>1.0), [-]
Returns:
float: Darcy friction factor, [-], or error message (str) if input is invalid.
"""
try:
Re = float(Re)
chevron_angle = float(chevron_angle)
plate_enlargement_factor = float(plate_enlargement_factor)
except (ValueError, TypeError):
return "Error: Could not convert parameters to required types."
# Validate Reynolds number
if Re <= 0:
return "Error: Reynolds number must be positive."
# Validate chevron angle range
if chevron_angle < 0 or chevron_angle > 90:
return "Error: Chevron angle must be between 0 and 90 degrees."
# Validate plate enlargement factor
if plate_enlargement_factor <= 1.0:
return "Error: Plate enlargement factor must be greater than 1.0."
try:
result = fluids_fp_muley_manglik(
Re=Re,
chevron_angle=chevron_angle,
plate_enlargement_factor=plate_enlargement_factor
)
# Handle special float values
if result != result: # NaN check
return "nan"
if result == float('inf'):
return "inf"
if result == float('-inf'):
return "-inf"
return float(result)
except Exception as e:
return f"Error computing fp_muley_manglik: {str(e)}"