import math
# GIVEN DATA
cost_avg = 1500 ; # Average cost on each repair in $
r_0 = 0 ; # No. of times repair required for damage to line
r_1 = 1 ; # No. of times repair required
r_2 = 2 ; # No. of times repair required
r_3 = 3 ; # No. of times repair required
P_r_0 = 0.4 ; # Probability of exactly no. of repairs for r_0
P_r_1 = 0.3 ; # Probability of exactly no. of repairs for r_1
P_r_2 = 0.2 ; # Probability of exactly no. of repairs for r_2
P_r_3 = 0.1 ; # Probability of exactly no. of repairs for r_3
R_0 = 0 ; # No. of times repair required for relocating & rebuilding
R_1 = 1 ; # No. of times repair required
P_R_0 = 0.9 ; # Probability of exactly no. of repairs for R_0
P_R_1 = 0.1 ; # Probability of exactly no. of repairs for R_1
n = 25. ; # useful life in years
i = 20./100 ; # carrying charge rate
p = ((1 + i)**n - 1)/(i*(1+i)**n) ; # p = P/A . Refer page 642
# CALCULATIONS
B = cost_avg*(r_0*P_r_0 + r_1*P_r_1 + r_2*P_r_2 + r_3*P_r_3 - R_0*P_R_0 - R_1*P_R_1)*p ; # Affordable cost of relocating line
# DISPLAY RESULTS
print ("EXAMPLE : 12.1 : SOLUTION :-") ;
print " Affordable cost of relocating line , B = $ %.1f "%(B) ;
print " Since actual relocating & rebuilding of line would cost much more than amount found " ;
print " The distribution engineer decides to keep the status quo " ;
import math
# GIVEN DATA
V = 40 ; # Actual wind velocity in mi/hr
c_pg = 40. ; # Circumference at ground level in inches
c_pt = 28. ; # Circumference at pole top in inches
l = 35. ; # height of pole in feet
l_g = 6 ; # Height of pole set in ground in feet
d_c = 0.81 ; # dia. of copper conductor in inches
span_avg = 120 ; # Average span in ft
no_c = 8 ; # NO. of conductors
# CALCULATIONS
# For case (a)
p = 0.00256 * (V**2) ; # Buck's Formula to find wind pressure on cylindrical surface in lb/ft**2
d_pg = c_pg/(math.pi) ; # dia. of pole at ground line in inches
d_pt = c_pt/(math.pi) ; # dia. of pole at pole top in inches
h_ag = ( l - l_g ) * 12 ; # Height of pole above ground in inch
S_pni = (1./2) * (d_pg + d_pt) * h_ag ; # projected area of pole in square inch
S_pni_ft = S_pni * 0.0069444 ; # projected area of pole in square ft
P = S_pni_ft * p ; # Total pressure of wind on pole in lb
# For case (b)
S_ni = d_c * span_avg * 12 ; # Projected area of conductor in square inch . [1 feet = 12 inch]
S_ni_ft = S_ni * 0.0069444 ; # Projected area of conductor in square ft . [1 sq inch = (0.0833333)**2 sq feet ≅ 0.069444 sq feet]
P_C = S_ni_ft * p * no_c ; # Total pressure of wind on conductor in lb
# DISPLAY RESULTS
print ("EXAMPLE : 12.2 : SOLUTION :-");
print " a) Total pressure of wind on pole , P = %.2f lb "%(P);
print " b) Total pressure of wind on conductors , P = %.2f lb "%(P_C);
import math
# GIVEN DATA
a = 45. ; # OH line to be bulit on wood poles in ft
b = 6.5 ; # Ground depth in ft
c = 1. ; # Top cross-arm below pole top in ft
d = 3. ; # Lower cross-arm below pole top in ft
m_t = 0.6861 ; # Transverse wind load on top cross-arm in lb/ft
m_l = 0.4769 ; # Transverse wind load on lower cross-arm in lb/ft
u_s = 8000. ; # Ultimate strength of wood pole in lb/sq.in
sf = 2. ; # Safety factor
span_avg = 250. ; # Average span in ft
p = 9. ; # Transverse wind load on wood poles in clb/sq.ft
# CALCULATIONS
h_1j = a - b - c ; # Moment arms for top arm in ft
h_2j = a - b - d ; # Moment arms for top arm in ft
M_tc1 = 1 * 4* m_t * span_avg * h_1j ; # Total bending moment for top arm in lb-ft
M_tc2 = 1 * 4* m_l * span_avg * h_2j ; # Total bending moment for lower arm in lb-ft
M_tc = M_tc1 + M_tc2 ; # Total bending moment for both cross-arms together in lb-ft
S = u_s/sf ; # Allowable max fiber stress in pounds per sq.inch
c_pg = ( M_tc/( 2.6385*10**-4*S ) )**(1/3) ; # circumference of pole at ground line in inch
c_pt = 22 ; # From proper tables , for 8000 psi ,
h_ag = a - b ; # Height of pole above ground in ft
d_pg = c_pg/(math.pi) ; # circumference of pole at ground line in inches
d_pt = c_pt/(math.pi) ; # circumference of pole at pole top in inches
M_gp = (1./72)*p *(h_ag**2)*(d_pg + 2*d_pt) ; # Bending moment due to wind on pole in pound ft . umath.sing equ 12.9
M_T = M_tc + M_gp ; # Total bending moment due to wind on conductor & pole
c_pg1 = (M_T/( 2.6385 * 10**-4 * S ) )**(1./3) ; # umath.sing equ 12.11
# DISPLAY RESULTS
print ("EXAMPLE : 12.3 : SOLUTION :-") ;
print " Minimum required pole circumference at the ground line , c = %.1f in "%(c_pg1) ;
print " Therefore , the nearest standard size pole,which has a ground-line circumference larger than c = %.1f in , has to be used "%(c_pg1) ;
print " Therefore required pole circumference at the ground line to be used is , c = %.f inch "%(c_pg1) ;
import math
from numpy import degrees,arctan
# GIVEN DATA
T1 = 3000 ; # Bending moments in lb
T2 = 2500 ; # Bending moments in lb
h1 = 37.5 ; # Bending moments at heights in ft
h2 = 35.5 ; # Bending moments at heights in ft
h_g = 36.5 ; # Height at which Guy is attached to pole in ft
L = 15 ; # Lead of guy in ft
# CALCULATIONS
# For case (a)
T_h = ( T1*h1 + T2*h2 )/h_g ; # Horizontal component of tension in guy wire in lb . From equ 12.26
# For case (b)
bet = degrees(arctan(h_g/L)) ; # beta angle in degree . From equ 12.28
# For case (c)
T_v = T_h * degrees(arctan(bet)) ; # Vertical component of tension in guy wire in lb . From equ 12.34
# For case (d)
T_g = T_h/( math.cos(math.radians(bet ))) ; # Tension in guy wire in lb . From equ 12.29
T_g1 = math.sqrt( T_h**2 + T_v**2 ) ; # Tension in guy wire in lb
# DISPLAY RESULTS
print ("EXAMPLE : 12.4 : SOLUTION :-") ;
print " a) Horizontal component of tension in guy wire , T_h = %.1f lb "%(T_h) ;
print " b) Angle β , β = %.2f degree "%(bet) ;
print " c) Vertical component of tension in guy wire , T_v = %.2f lb "%(T_v) ;
print " d) Tension in guy wire , T_g = %.1f lb "%(T_g) ;
print " or) From another equation , " ;
print " Tension in guy wire , T_g = %.1f lb "%(T_g1) ;