%Variables and Parameters
v=20;
r=200;
l=5;
mu_s=0.4;
angle=10;
theta=angle*(pi/180);
g=9.8;
%Calculations
Banking_Velocity=calcBANKvel(r,mu_s,g,theta);
Unbank_SafeVelocity=calcUNBANKsafe(mu_s,r,g);
Banking_Angle=calcBANKangel(v,r,g);
Bank_SafeVelocity=calcBANKsafe(r,g,theta);
Bank_Elevation=calcBANKelevation(l,v,r,g);
%Ouput
fprintf('The velocity of vehicle on a curved road is %4.2f m/s.\n',Banking_Velocity)
fprintf('The safe velocity on an unbanked road is %4.2f m/s.\n',Unbank_SafeVelocity)
fprintf('The angle of banking is %4.2f degrees.\n',Banking_Angle)
fprintf('The safe velocity on a banked road is %4.2f m/s.\n',Bank_SafeVelocity)
fprintf('The height of elevation is %4.2f m.\n',Bank_Elevation)
%Conditions
if v<Bank_SafeVelocity
disp('The velocity of the vehicle is safe for banking.')
end
if v>Bank_SafeVelocity
disp('The velocity of the vehicle is unsafe for banking.')
end
%Custom Functions
function BANK_velocity=calcBANKvel(r,mu_s,g,theta)
BANK_velocity=sqrt((r*g*(tan(theta)+mu_s))/(1-(mu_s*tan(theta))));
end
function BANK_unbankSafeVel=calcUNBANKsafe(mu_s,r,g)
BANK_unbankSafeVel=sqrt(mu_s*r*g);
end
function BANK_angle=calcBANKangel(v,r,g)
BANK_angle=atan((v^2)/(r*g))*(180/pi);
end
function BANK_bankSafeVel=calcBANKsafe(r,g,theta)
BANK_bankSafeVel=sqrt(r*g*tan(theta));
end
function BANK_elevation=calcBANKelevation(l,v,r,g)
BANK_elevation=l*(sin(atan((v^2)/(r*g))));
end