Download as pdf or txt
Download as pdf or txt
You are on page 1of 3

import matplotlib.

pyplot as plt

import numpy as np

# Define the parameters of the reciprocating air compressor

V_swept = 0.1 # Swept volume (m^3)

R = 287 # Gas constant for air (J/kg-K)

T_inlet = 300 # Inlet temperature (K)

P_inlet = 100000 # Inlet pressure (Pa)

n = 1.3 # Polytropic index

m_dot = 0.5 # Mass flow rate (kg/s)

# Define a range of pressure ratios to analyze

pressure_ratios = np.linspace(1, 10, 100)

# Initialize lists to store performance metrics

efficiencies = []

discharge_temperatures = []

# Calculate performance metrics for each pressure ratio

for pr in pressure_ratios:

P_discharge = pr * P_inlet # Discharge pressure (Pa)

# Calculate isentropic temperature at discharge

T_discharge_isentropic = T_inlet * (P_discharge / P_inlet) ** ((n - 1) / n)

# Calculate actual discharge temperature using polytropic process

T_discharge_actual = T_inlet * ((P_discharge / P_inlet) ** ((n - 1) / n) - 1) / (n * (P_discharge / P_inlet)


** ((n - 1) / n - 1))
# Calculate isentropic power

W_isentropic = m_dot * R * (T_discharge_isentropic - T_inlet) / (n - 1)

# Calculate actual power

W_actual = m_dot * R * (T_discharge_actual - T_inlet) / (n - 1)

# Calculate isentropic efficiency

eta_isentropic = W_actual / W_isentropic

# Store results in lists

efficiencies.append(eta_isentropic)

discharge_temperatures.append(T_discharge_actual)

# Plotting

plt.figure(figsize=(10, 6))

# Plot efficiency vs pressure ratio

plt.subplot(2, 1, 1)

plt.plot(pressure_ratios, efficiencies, label='Isentropic Efficiency')

plt.xlabel('Pressure Ratio')

plt.ylabel('Efficiency')

plt.title('Effect of Pressure Ratio on Efficiency')

plt.legend()

# Plot discharge temperature vs pressure ratio

plt.subplot(2, 1, 2)

plt.plot(pressure_ratios, discharge_temperatures, label='Discharge Temperature (K)')

plt.xlabel('Pressure Ratio')

plt.ylabel('Temperature (K)')
plt.title('Effect of Pressure Ratio on Discharge Temperature')

plt.legend()

plt.tight_layout()

plt.show()

OUTPUT

You might also like