Week 2 Air standard Cycle
Aim:
Write a program to calculate air standard otto cycle using python
Introduction
The air standard otto cycle is idealized for spark ignition internal combustion engine
The otto cycle process
Process 1-2: Reversible adiabatic compression of air
Process 2-3: Heat condition at constant value
Process 3-4: Reversible adiabatic expanssion of air
Process 4-1: Heat rejection at constant value

Geometric inputs: Bore, Stroke, Connecting rod, crank, starting of the crank,Ending of the crank
Volume

THERMAL EFFICIENCY OF ENGINE :

where
1. n = thermal efficiency
2. k = the value of gamma that 1.4 adiabatic process
3. r = compression ratio
CODE:
import math
import matplotlib.pyplot as plt
def engine_kinematics(Bore,Stroke,con_rod,cr,start_crank,end_crank):
a = Stroke/2
R = con_rod/a
v_s = math.pi*(1/4)*pow(Bore,2)*Stroke
v_c = v_s/(cr-1)
sc = math.radians(start_crank)
ec = math.radians(end_crank)
num_values = 50
dtheta = (ec-sc)/(num_values-1)
v = []
for i in range(0,num_values):
theta = sc + i*dtheta
term1 = 0.5*(cr-1)
term2 = R + 1 - math.cos(theta)
term3 = pow(R,2) - pow(math.sin(theta),2)
term3 = pow(term3,0.5)
v.append((1+ term1*(term2 - term3))*v_c)
return v
# inputs
p1 = 101325
t1 = 500
t3 = 2300
gamma = 1.4
# Geometeric parameters
Bore = 0.1
Stroke = 0.1
con_rod = 0.15
cr = 8
# volume computational
v_s = (math.pi/4)*pow(Bore,2)*Stroke
v_c = v_s/(cr-1)
v1 = v_c + v_s
#state point 2
v2 = v_c
#p2v2^gamma = p1v1^gamma
p2 = p1*pow(v1,gamma)/pow(v2,gamma)
#p2v2/t2 = p1v1/t1 | rhs = p1v1/t1 | p2v2/t2 = rhs | t2 = p2v2/rhs
rhs = p1*v1/t1
t2 = p2*v2/rhs
V_compression = engine_kinematics(Bore, Stroke, con_rod, cr, 180, 0)
constant = p1*pow(v1,gamma)
P_compression = []
for v in V_compression:
P_compression.append(constant/pow(v, gamma))
#state point 3
v3 = v2
#p3v3/t3 = p2v2/t2 | rhs = p2v2/t2 | p3 = rhs*t3/v3
rhs = p2*v2/t2
p3 = rhs*t3/v3
V_expansion = engine_kinematics(Bore, Stroke, con_rod, cr, 0, 180)
constant = p3*pow(v3,gamma)
P_expansion = []
for v in V_expansion:
P_expansion.append(constant/pow(v, gamma))
#state point 4
v4 = v1
#p4v4^gamma = p3v3^gamma
p4 = p3*pow(v3,gamma)/pow(v4,gamma)
#p4v4/t4 = rhs
t4 = p4*v4/rhs
plt.plot([v2,v3],[p2,p3])
plt.plot(V_compression, P_compression)
plt.plot(V_expansion, P_expansion)
plt.plot([v4,v1],[p4,p1])
plt.show()
#thermal effciency of engine
n = 1-(pow(cr,(1-gamma)))
print(n)
FUNCTION OF KINEMATICS
import math
#inputs
Bore =0.1
Stroke = 0.1
con_rod = 0.15
cr = 12
a = Stroke/2
R = con_rod/a
v_s = math.pi*(1/4)*pow(Bore,2)*Stroke
v_c = v_s/(cr-1)
theta = math.radians(180)
term1 = 0.5*(cr-1)
term2 = R+1-math.cos(theta)
term3 = pow(R,2) - pow(math.sin(theta),2)
term3 = pow(term3,0.5)
v = ((1+ term1*(term2-term3))*v_c)
print(v)
print(v_c+v_s)
RESULT:
Output

THERMAL EFFICIENCY:
output

CONCLUSION:
Thus the thermal efficiency of engine is 62.98%