efficiency and pv diagram of otto cycle

report :
->firstly inputs like gemetric parameters like bore and stroke are declared along with initial stage parameters p1 and t1, v1 and v2 are derived from swept and clearance volume formulas.
->p2 and t2 are claculated in the combustion stroke wich is the 2nd state.
->p3 and v3 are calculated in the expansion stroke and t3 is agiven parameter.
->variables p4 and v4 are derived in the last stroke and then efficiency of otto cycle is calculated with the formula(1-(1/cr)^gamma-1)).
->finally all the four stages are plotted.
->pv compression and expansion are calculated using engine_kinematics function to plot the compression and expansion stroke.
errors :
->mistakenly took p1 instead of pi while determining swept and clearance volumes.
->forgot to take screenshots of errors.
clear all
close all
clc
%inputs
gamma = 1.4
t3= 2300
%state variables
p1=101325
t1=500
%engine geometric parameters
bore=0.1;
stroke=0.1;
con_rod=0.15;
cr=12;
%calculating the swept volume and clearance volume
v_swept= (pi/4)*bore^2*stroke;
v_clearance=v_swept/(cr-1);
v1=v_swept+v_clearance;
v2=v_clearance;
%state variables at state point 2
%p2v2^gamma = p1v1^gamma
%p2=p1*(v1/v2)^gamma = p1*cr^gamma
p2= p1*cr^gamma;
%p1v1/t1=p2v2/t2 | t2 = p2*v2*t1/(p1*v1)
t2=p2*v2*t1/(p1*v1);
constant_c = p1*v1^gamma;
V_compression = engine_kinematics(0.1,0.1,0.15,12,180,0)
P_compression = constant_c./V_compression.^gamma;
%state variables at state point 3
v3= v2
%p3= p2*t3/t2 | p3 = p2*t3/t2
p3= p2*t3/t2
constant_c = p3*v3^gamma;
V_expansion = engine_kinematics(0.1,0.1,0.15,12,0,180);
P_expansion = constant_c./V_expansion.^gamma;
%state varaiables at state point 4
v4= v1
%p3v3^gamma = p4v4^gamma | p4 = p3(v3/v4)^gamma
p4 = p3*(v3/v4)^gamma
otto_efficiency = 1-(1/cr)^gamma-1
hold on
plot(v1,p1,'*','Color','r')
plot(V_compression,P_compression)
plot(v2,p2,'*','Color','r')
plot(v3,p3,'*','Color','r')
plot(V_expansion, P_expansion)
plot(v4,p4,'*','Color','r')
plot([v2,v3],[p2,p3])
plot([v4,v1],[p4,p1])
xlabel('v')
ylabel('p')