import math
# GIVEN DATA
d = 2. ; # Diameter of conductor in cm
D = 5. ; # Inside diameter of lead sheath in cm
V = 24.9 ; # Line-to-neutral voltage in kV
# CALCULATIONS
# For case (a)
r = d/2 ;
R = D/2 ;
E_max = V/( r * math.log(R/r) ) ; # Maximum electric stress in kV/cm
E_min = V/( R * math.log(R/r) ) ; # Minimum electric stress in kV/cm
# For case (b)
r_1 = R/2.718 ; # Optimum conductor radius in cm . From equ 5.15
E_max1 = V/( r_1 * math.log(R/r_1) ) ; # Min value of max stress in kV/cm
# DISPLAY RESULTS
print " a) Maximum value of electric stress , E_max = %.2f kV/cm "%(E_max) ;
print " Minimum value of electric stress , E_min = %.2f kV/cm "%(E_min) ;
print " b) Optimum value of conductor radius , r = %.2f cm "%(r_1) ;
print " Minimum value of maximum stress , E_max = %.2f kV/cm "%(E_max1) ;
import math
from sympy import Symbol
# GIVEN DATA
r = 1. ; # Radius of conductor in cm
t_1 = 2. ; # Thickness of insulation layer in cm
r_1 = r + t_1 ;
r_2 = 2. ; # Thickness of insulation layer in cm . r_2 = t_1 = t_2
R = r_1 + r_2 ;
K_1 = 4. ; # Inner layer Dielectric constant
K_2 = 3. ; # Outer layer Dielectric constant
kv = 19.94 ; # potential difference b/w inner & outer lead sheath in kV
# CALCULATIONS
# E_1 = 2q/(r*K_1) & E_2 = 2q/(r_1*K_2) . Let E = E_1/E_2
E = ( r_1 * K_2 )/( r * K_1 ) ; # E = E_1/E_2
V_1 = Symbol('V_1') ; # defining unknown V_1
E_1 = V_1/( r * math.log(r_1/r) ) ;
V_2 = Symbol('V_2') ; # defining unknown V_2
V_2 = kv - (V_1) ;
E_2 = V_2/( r_1 * math.log(R/r_1) ) ;
E_3 = E_1/E_2 ;
# Equating E = E_3 . we get the value of V_1
V_1 = 12.30891068 ; # Voltage in kV
E_1s = V_1/( r * math.log(r_1/r) ) ; # Potential gradient at surface of conductor in kV/cm . E_1 = E_1s
# DISPLAY RESULTS
print " Potential gradient at the surface of conductor , E_1 = %.2f kV/cm "%E_1s ;
import math
# GIVEN DATA
D = 1.235 ; # Inside diameter of sheath in inch
d = 0.575 ; # Conductor diameter in inch
kv = 115. ; # Voltage in kV
l = 6000. ; # Length of cable in feet
r_si = 2000. ; # specific insulation resismath.tance is 2000 MΩ/1000ft . From Table 5.2
# CALCULATIONS
# For case (a)
r_si0 = r_si * l/1000 ;
R_i = r_si0 * math.log10 (D/d) ; # Total Insulation resismath.tance in MΩ
# For case (b)
P = kv**2/R_i ; # Power loss due to leakage current in W
# DISPLAY RESULTS
print " a) Total insulation resistance at 60 degree F , R_i= %.2f MΩ "%(R_i/1000) ;
print " b) Power loss due to leakage current , V**2/R_i = %.4f W "%P ;
# NOTE : ERROR : Mistake in textbook case a "
import math
# GIVEN DATA
C_a = 2. * 10**-6 ; # Capacimath.tance b/w two conductors in F/mi
l = 2. ; # length in mi
f = 60. ; # Frequency in Hz
V_L_L = 34.5 * 10**3 ; # Line-to-line voltage in V
# CALCULATIONS
C_a1 = C_a * l ; # Capacimath.tance for total cable length in F
C_N = 2 * C_a1 ; # capacimath.tance of each conductor to neutral in F . From equ 5.56
V_L_N = V_L_L/math.sqrt(3) ; # Line-to-neutral voltage in V
I_c = 2 * math.pi * f * C_N * (V_L_N) ; # Charging current of cable in A
# DISPLAY RESULTS
print " Charging current of the cable , I_c = %.2f A "%I_c ;
import math
# GIVEN DATA
C_a = 0.45 * 10**-6 ; # Capacimath.tance b/w two conductors in F/mi
l = 4. ; # length of cable in mi
f = 60. ; # Freq in Hz
V_L_L = 13.8 * 10**3 ; # Line-to-line voltage in V
pf = 0.85 ; # lagging power factor
I = 30. ; # Current drawn by load at receiving end in A
# CALCULATIONS
# For case (a)
C_a1 = C_a * l ; # Capacimath.tance for total cable length in F
C_N = 2 * C_a1 ; # capacimath.tance of each conductor to neutral in F
V_L_N = V_L_L/math.sqrt(3) ; # Line-to-neutral voltage in V
I_c = 2 * math.pi * f * C_N * (V_L_N) ; # Charging current in A
I_c1 = 1j * I_c ; # polar form of Charging current in A
# For case (b)
phi_r = math.degrees(math.acos(pf)) ; # pf angle
I_r = I * ( math.cos(math.radians(phi_r)) - math.sin(math.radians(phi_r)) * 1j ) ; # Receiving end current in A
I_s = I_r + I_c1 ; # sending end current in A
# For case (c)
pf_s = math.cos(math.radians( math.degrees(math.atan2( I_s.imag,I_s.real)) ) ) ; # Lagging pf of sending-end
# DISPLAY RESULTS
print " a) Charging current of feeder , I_c = %.2f A "%I_c ;
print " Charging current of feeder in complex form , I_c = i*%.2f A "%I_c1.imag ;
print " b) Sending-end current , I_s = %.2f<%.2f A"%(abs(I_s),math.degrees(math.atan2(I_s.imag,I_s.real) )) ;
print " c) Sending-end power factor ,cos Φ_s = %.2f Lagging power factor "%pf_s ;
import math
# GIVEN DATA
f = 60. ; # Freq in Hz
V_L_L = 138. ; # Line-to-line voltage in kV
T = 11/64. ; # Thickness of conductor insulation in inches
t = 5/64. ; # Thickness of belt insulation in inches
d = 0.575 ; # Outside diameter of conductor in inches
# CALCULATIONS
# For case (a)
T_1 = (T + t)/d ; # To find the value of geometric factor G for a math.single-conductor cable
G_1 = 2.09 ; # From table 5.3 , by interpolation
sf = 0.7858 ; # sector factor obtained for T_1 from table 5.3
G = G_1 * sf ; # real geometric factor
# For case (b)
V_L_N = V_L_L/math.sqrt(3) ; # Line-to-neutral voltage in V
K = 3.3 ; # Dielectric constant of insulation for impregnated paper cable
I_c = 3 * 0.106 * f * K * V_L_N/(1000 * G) ; # Charging current in A/1000ft
# DISPLAY RESULTS
print " a) Geometric factor of cable using table 5.3 , G_1 = %.3f "%G ;
print " b) Charging current , I_c = %.3f A/1000ft "%I_c ;
import math
# GIVEN DATA
V_L_N = 7.2 ; # Line-to-neutral voltage in kV
d = 0.814 ; # Conductor diameter in inches
D = 2.442 ; # inside diameter of sheath in inches
K = 3.5 ; # Dielectric constant
pf = 0.03 ; # power factor of dielectric
l = 3.5 ; # length in mi
f = 60 ; # Freq in Hz
u = 1.3 * 10**7 ; # dielectric resistivity of insulation in MΩ-cm
# CALCULATIONS
# For case (a)
r = d * 2.54/2 ; # conductor radius in cm . [1 inch = 2.54 cm]
R = D * 2.54/2 ; # Inside radius of sheath in cm
E_max = V_L_N/( r * math.log(R/r) ) ; # max electric stress in kV/cm
# For case (b)
C = 0.0388 * K/( math.log10 (R/r) ) ; # capacimath.tance of cable in μF/mi . From equ 5.29
C_1 = C * l ; # capacimath.tance of cable for total length in μF
# For case (c)
V_L_N1 = 7.2 * 10**3 ; # Line-to-neutral voltage in V
C_2 = C_1 * 10**-6 ; # capacimath.tance of cable for total length in F
I_c = 2 * math.pi * f * C_2 * (V_L_N1) ; # Charging current in A
# For case (d)
l_1 = l * 5280 * 12 * 2.54 ; # length in cm . [1 mi = 5280 feet] ; [1 feet = 12 inch]
R_i = u * math.log(R/r)/( 2 * math.pi * l_1) ; # Insulation resismath.tance in MΩ
# For case (e)
P_lc = V_L_N**2/R_i ; # power loss in W
# For case (f)
P_dl = 2 * math.pi * f * C_1 * V_L_N**2 * pf ; # Total dielectric loss in W
# For case (g)
P_dh = P_dl - P_lc ; # dielectric hysteresis loss in W
# DISPLAY RESULTS
print " a) Maximum electric stress occuring in cable dielectric , E_max = %.2f kV/cm "%E_max ;
print " b) Capacitance of cable , C = %.4f μF "%C_1 ;
print " c) Charging current of cable , I_c = %.3f A "%I_c ;
print " d) Insulation resismath.tance , R_i = %.2f MΩ "%R_i ;
print " e) Power loss due to leakage current , P_lc = %.2f W "%P_lc ;
print " f) Total dielectric loss , P_dl = %.2f W "%P_dl ;
print " g) Dielectric hysteresis loss , P_dh = %.2f W" %P_dh ;
import math
# GIVEN DATA
l = 3. ; # underground cable length in mi
f = 60. ; # frequency in hertz
# CALCULATIONS
# For case (a)
R_dc = 0.00539 ; # dc resistance of cable in Ω/1000ft , From table 5.5
R_dc1 = (R_dc/1000) * 5280 * 3 ; # Total dc resistance in Ω . [1 mi = 5280 feet]
# For case (b)
s_e = 1.233 ; # skin effect coefficient
R_eff = s_e * R_dc1 ; # Effective resistance in Ω
percentage = ( (R_eff - R_dc1)/(R_dc1) ) * 100 ; # skin effect on effective resistance in %
# DISPLAY RESULTS
print " a) Total dc resistance of the conductor , R_dc = %.4f Ω "%R_dc1 ;
print " b) Effective resistance at 60 hz , R_eff = %.4f Ω "%R_eff ;
print " Skin effect on the Effective resistance in percent at 60 hz , \
R_eff = %.1f percent greater than for direct current"%percentage ;
print " c) Percentage of reduction in cable ampacity in part b) = %.1f percent "%percentage ;
import math
# GIVEN DATA
kV = 35. ; # voltage in kV
f = 60. ; # operating frequency of cable in hertz
d = 0.681 ; # diameter of conductor in inches
t_i = 345. ; # Insulation thickness in cmil
t_s = 105. ; # Metal sheet thickness in cmil
r_c = 0.190 ; # Conductor ac resistance in Ω/mi
l = 10. ; # Length of cable in mi
# CALCULATIONS
# For case (a)
T_i = t_i/1000. ; # insulation thickness in inch
T_s = t_s/1000. ; # Metal sheet thickness in inch
r_i = (d/2) + T_i ; # Inner radius of metal sheath in inches
r_0 = r_i + T_s ; # Outer radius of metal sheath in inches
S = r_i + r_0 + T_s ; # Spacing b/w conductor centers in inches
X_m = 0.2794 * (f/60) * math.log10 ( 2*S/(r_0 + r_i) ) ; # Mutual reacmath.tance b/w conductor & sheath per phase in Ω/mi . From Equ 5.78
X_m1 = X_m * l ; # Mutual reacmath.tance b/w conductor & sheath in Ω/phase
# For case (b)
r_s = 0.2/((r_0+r_i)*(r_0-r_i)) ; # sheet resistance per phase in Ω/mi/phase . From equ 5.79
r_s1 = r_s * l ; # sheet resistance per phase in Ω/phase
# For case (c)
d_r = r_s * (X_m**2)/( (r_s)**2 + (X_m)**2 ) ; # increase in conductor resistance due to sheath current in Ω/mi/phase . From equ 5.77
d_r1 = d_r * l ; # # increase in conductor resistance due to sheath current in Ω/phase
# For case (d)
r_a = r_c + ( r_s * X_m**2 )/( (r_s)**2 + (X_m)**2 ) ; # Total positive or negative sequence resistance including sheath current effects in Ω/mi/phase . From equ 5.84
r_a1 = r_a * l ; # Total positive or negative sequence resistance including sheath current effects in Ω/phase
# For case (e)
ratio = d_r/r_c ; # ratio = sheath loss/conductor loss
# For case (f)
I = 400 ; # conductor current in A ( given for case (f) )
P_s = 3 * (I**2) * ( r_s * X_m**2)/( r_s**2 + X_m**2 ) ; # For three phase loss in W/mi
P_s1 = P_s * l ; # Total sheath loss of feeder in Watts
# DISPLAY RESULTS
print " a) Mutual reactance b/w conductors & sheath , X_m = %.5f Ω/mi/phase "%X_m ;
print " or Mutual reactance b/w conductors & sheath , X_m = %.4f Ω/phase "%X_m1 ;
print " b) Sheath resistance of cable , r_s = %.4f Ω/mi/phase "%r_s ;
print " or Sheath resistance of cable , r_s = %.3f Ω/phase "%(r_s1) ;
print " c) Increase in conductor resistance due to sheath currents , Δr = %.5f Ω/mi/phase "%(d_r) ;
print " or Increase in conductor resistance due to sheath currents , Δr = %.4f Ω/phase "%(d_r1) ;
print " d) Total resistance of conductor including sheath loss , r_a = %.5f Ω/mi/phase "%(r_a) ;
print " or Total resistance of conductor including sheath loss , r_a = %.4f Ω/phase "%(r_a1) ;
print " e) Ratio of sheath loss to conductor loss , Ratio = %.4f "%ratio ;
print " f) Total sheath loss of feeder if current in conductor is 400A , P_s = %.2f W "%P_s1 ;
print " NOTE : ERROR : There are mistakes in some units in the Textbook " ;
import math
# GIVEN DATA
f= 60. ; # frequency in hertz
t = 245. ; # insulation thickness in mils
t_s = 95. ; # Lead/metal sheath thickness in mils
d = 0.575 ; # diameter of conductor in inches
r_s = 1.72 ; # sheath resistance in Ω/mi
r_a = 0.263 ; # Conductor resistance in Ω/mi
r = 100. ; # earth resistivity in Ω-mi
D_s = 0.221 ; # GMR of one conductor in inches
D_ab = 24. ; # dismath.tance b/w conductor a & b in inch . refer fig 5.30
D_bc = 24. ; # dismath.tance b/w conductor b & c in inch . refer fig 5.30
D_ca = 48. ; # dismath.tance b/w conductor c & a in inch . refer fig 5.30
# CALCULATIONS
T = t/1000 ; # insulation thickness in inch . [1 mils = 0.001 inch]
T_s = t_s/1000 ; # Lead/metal sheath thickness in mils
r_i = (d/2) + T ; # Inner radius of metal sheath in inches
r_0 = r_i + T_s ; # Outer radius of metal sheath in inches
r_e = 0.00476 * f ; # AC resistance of earth return in Ω/mi
D_e = 25920 * math.sqrt(r/f) ; # Equivalent depth of earth return path in inches
D_eq = (D_ab*D_bc*D_ca)**(1./3) ; # Mean dismath.tance among conductor centers in inches
Z_0a = (r_a + r_e) + (1j) * (0.36396) * math.log(D_e/((D_s*D_eq**2)**(1./3))) ;
D_s_3s = (D_eq**2 * (r_0+r_i)/2)**(1/3) ; # GMR of conducting path composed of 3 sheaths in parallel in inches
Z_0s = (r_s + r_e) + (1j) * 0.36396 * math.log (D_e/D_s_3s) ; # Zero sequence impedance of sheath in inches
D_m_3c_3s = D_s_3s ; # Zero sequence mutual impedance b/w conductors & sheaths in inches
Z_0m = r_e + (1j)*(0.36396)*math.log(D_e/D_m_3c_3s) ;
# For case (a)
Z_00 = Z_0a - (Z_0m**2/Z_0s) ; # Total zero sequence impedance when ground and return paths are present in Ω/mi/phase
# For case (b)
Z_0 = Z_0a + Z_0s - 2*Z_0m ; # Total zero sequence impedance when there is only sheath return path in Ω/mi/phase
# For case (c)
Z_01 = Z_0a ; # Total zero sequence impedance when there is only ground return path in Ω/mi/phase
# DISPLAY RESULTS
print " a) Total zero sequence impedance when both ground & return paths are present , \
Z_00 = %.3f<%.1f Ω/mi/phase "%(abs(Z_00),math.degrees(math.atan2(Z_00.imag,Z_00.real))) ;
print " b) Total zero sequence impedance when there is only sheath return path , \
Z_0 = %.3f<%.1f Ω/mi/phase "%(abs(Z_0),math.degrees(math.atan2(Z_0.imag,Z_0.real))) ;
print " c) Total zero sequence impedance when there is only ground return path ,\
Z_0a = %.4f<%.1f Ω/mi/phase "%(abs(Z_01),math.degrees(math.atan2(Z_01.imag,Z_01.real))) ;
print " NOTE : ERROR : There are mistakes in units in the Textbook " ;
import math
# GIVEN DATA
f= 60 ; # frequency in hertz
T = 0.175 ; # insulation thickness in inches
d = 0.539 ; # diameter of conductor in inches
G = 0.5 ; # Geometric factor from fig 5.3
K = 3.7 ; # Dielectric constant
V_LL = 13.8 ; # Line-to-line voltage in kV
# CALCULATIONS
D = d + 2 * T ; # Inside diameter of sheath in inches
G = 2.303 * math.log10 (D/d) ; # Geometric factor for a math.single conductor
sf = 0.710 ; # sector factor From Table 5.3 . For (T+t/d) obtained
V_LN = V_LL/math.sqrt(3) ; # Line-to-neutral voltage in kV
# For case (a)
C_0 = 0.0892 * K/(G * sf) ; # shunt capacimath.tances in μF/mi/phase . C_0 = C_1 = C_2 . From equ 5.161
# For case (b)
X_0 = 1.79 * G * sf/( f * K ) ; # shunt capacitive reacmath.tance in MΩ/mi/phase .X_0 = X_1 = X_2. From equ 5.162
# For case (c)
I_0 = 0.323 * f * K * V_LN/( 1000 * G * sf ) ; # Charging current in A/mi/phase .I_0 = I_1 = I_2. From equ 5.163
# DISPLAY RESULTS
print " a) Shunt capacitances for zero , positive & negative sequences , C_0 = C_1 = C_2 = %.2f μF/mi/phase "%(C_0) ;
print " b) Shunt capacitive reactance for zero , positive & negative sequences , X_0 = X_1 = X_2 = %.2e MΩ/mi/phase "%(X_0) ;
print " c) Charging current for zero , positive & negative sequences , I_0 = I_1 = I_2 = %.3f A/mi/phase "%(I_0) ;
print " NOTE : 2.87e-03 MΩ/mi/phase can also be written as 2.87 kΩ/mi/phase as in textbook case b " ;
import math
from numpy import array,matrix,exp,log,abs
from numpy.linalg import inv
# GIVEN DATA
f= 60. ; # frequency in hertz
r_a = 0.19 ; # Conductor resistance in Ω/mi
l = 10. ; # length in mi
D_s = 0.262 ; # GMR of one conductor in inches
d = 18. ; # conductors spacing in inches
# CALCULATIONS
# For case (a)
X_a = 1j * 0.1213 * log (12/D_s) ; # reacmath.tance of individual phase conductor at 12 inch spacing in Ω/mi
Z_aa = l * ( r_a + X_a ) ; # Z_aa = Z_bb = .... = Z_zz
Z_bb = Z_aa ;
Z_zz = Z_aa ;
Z_cc = Z_aa ;
D_eq1 = d * 2 ;
Z_ab = (l) * ( 1j * 0.1213 * log(12/D_eq1) ) ;
Z_bc = Z_ab ;
Z_xy = Z_ab ; # Z_xy = Z_yx
Z_yz = Z_ab ;
Z_ba = Z_ab ;
Z_cb = Z_ab ;
D_eq2 = d * 3 ;
Z_bz = (l) * ( 1j * 0.1213 * log(12/D_eq2) ) ;
Z_ay = Z_bz ; # Z_ya = Z_ay
Z_cx = Z_bz ; # Z_cx = Z_xc
Z_yz = Z_bz ; # Z_zy = Z_yz
D_eq3 = d * 4 ;
Z_ac = (l) * ( 1j * 0.1213 * log(12/D_eq3) ) ;
Z_ca = Z_ac ; # Z_ac = Z_xz = Z_zx
D_eq4 = d * 1 ;
Z_ax = (l) * ( 1j * 0.1213 * log(12/D_eq4) ) ;
Z_bx = Z_ax ; # Z_ax = Z_xa ; Z_bx = Z_xb
Z_by = Z_ax ; # Z_by = Z_yb
Z_cy = Z_ax ; # Z_cy = Z_yc
Z_cz = Z_ax ;
D_eq5 = d * 5 ;
Z_az = (l) * (1j*0.1213*log(12/D_eq5)) ; # Z_za= Z_az
Z_s = array([[Z_aa, Z_ab, Z_ac] , [Z_ba, Z_bb, Z_bc] , [Z_ca, Z_cb, Z_cc]]) ;
Z_tm = array([[Z_ax, Z_bx, Z_cx] , [Z_ay, Z_by, Z_cy] , [Z_az, Z_bz, Z_cz]]) ;
Z_M = array([[Z_ax, Z_ay, Z_az] , [Z_bx, Z_by, Z_bz] , [Z_cx, Z_cy, Z_cz]]) ;
Z_N = array([[Z_aa, Z_xy, Z_ac] , [Z_xy, Z_aa, Z_ab] , [Z_ac, Z_ab, Z_aa]]) ;
Z_new = (Z_s)-(Z_M)*(Z_N)**(-1)*(Z_tm) ;
# For case (b)
a = 1*exp(1j*120*math.pi/180) ; # By symmetrical components theory to 3-Φ system
A = array([[1, 1, 1] ,[1, a**2, a] ,[1, a, a**2]]) ;
Z_012 = inv(A) * Z_new * abs(A) ; # Sequence-impedance matrix
# DISPLAY RESULTS
print ("EXAMPLE : 5.12 : SOLUTION :-") ;
print " a) Phase Impedance Matrix , [Z_abc] = "
print Z_new ;
print " b) Sequence-Impedance Matrix , [Z_012] = " ;
print Z_012 ;
# note : rounding off error. answer in book is wrong.
import math
# GIVEN DATA
L = 50 ; # length of transmission line in km
P_l_oh = 820 ; # Power loss at peak load for overhead transmission line in kW/km
P_l_g = 254 ; # Power loss at peak load for gas insulated transmission line in kW/km
cost_kwh = 0.10 # cost of electric energy in $ per kWh
lf_ann = 0.7 ; # Annual load factor
plf_ann = 0.7 ; # Annual Power loss factor
h_yr = 365*24 ; # Time in Hours for a year
total_invest = 200000000 ; # Investment cost of GIL in $ ( for case (j) )
# CALCULATIONS
# For case (a)
Power_loss_OHline = P_l_oh * L ; # Power loss of overhead line at peak load in kW
# For case (b)
Power_loss_GILline = P_l_g * L ; # Power loss of gas-insulated transmission line at peak load in kW
# For case (c)
energy_loss_OH = Power_loss_OHline * h_yr ; # Total annual energy loss of OH line at peak load in kWh/yr
# For case (d)
energy_loss_GIL = Power_loss_GILline * h_yr ; # Total annual energy loss of GIL at peak load in kWh/yr
# For case (e)
energy_ann_OH = lf_ann * energy_loss_OH ; # Average energy loss of OH line at peak load in kWh/yr
# For case (f)
energy_ann_GIL = lf_ann * energy_loss_GIL ; # Average energy loss of GIL line at peak load in kWh/yr
# For case (g)
cost_ann_OH = cost_kwh * energy_ann_OH ; # Average annual cost of losses of OH line in $ per year
# For case (h)
cost_ann_GIL = cost_kwh * energy_ann_GIL ; # Average annual cost of losses of GIL line in $ per year
# For case (i)
P_loss_ann = cost_ann_OH - cost_ann_GIL ; # Annual resulmath.tant savings of losses per yr
# For case (j)
break_period = total_invest/P_loss_ann ; # Payback period if GIL alternative period is selected
# DISPLAY RESULTS
print ("EXAMPLE : 5.15 : SOLUTION :-") ;
print " a) Power loss of Overhead line at peak load , Power loss)_OH_line = %d kW "%(Power_loss_OHline) ;
print " b) Power loss of Gas-insulated transmission line , Power loss)_GIL_line = %d kW "%(Power_loss_GILline) ;
print " c) Total annual energy loss of Overhead transmission line at peak load = %.4e kWh/yr "%(energy_loss_OH) ;
print " d) Total annual energy loss of Gas-insulated transmission line at peak load = %.5e kWh/yr "%(energy_loss_GIL);
print " e) Average energy loss of Overhead transmission line = %.5e kWh/yr "%(energy_ann_OH);
print " f) Average energy loss of Gas-insulated transmission line at peak load = %.5e kWh/yr "%(energy_ann_GIL);
print " g) Average annual cost of losses of Overhead transmission line = $ %.5e/yr "%(cost_ann_OH);
print " h) Average annual cost of losses of Gas-insulated transmission line = $ %.5e/yr "%(cost_ann_GIL);
print " i) Annual resultant savings in losses using Gas-insulated transmission line = $ %.6e/yr "%(P_loss_ann);
print " j) Breakeven period when GIL alternative is selected = %.1f years "%(break_period);
import math
# GIVEN DATA
n = 40. ; # useful life in years
i = 10./100 ; # carrying charge rate
A_P = (i*(1+i)**n)/((1 + i)**n - 1) ; # Refer page 642
A_F = 0.00226 ; # A_F = A/F
pr_tax = 3./100 ; # Annual ad property taxes is 3% of 1st costs of each alternative
# FOR OVERHEAD TRANSMISSION
L_OH = 50. ; # length of route A in mi
cost_b_A = 1. * 10**6 ; # cost per mile to bulid in $
salvage_A = 2000. ; # salvage value per mile at end of 40 years
cost_mait_OH = 500. ; # cost in $ per mile to maintain
# SUBMARINE TRANSMISSION LINE
L_S = 30. ; # length of route B in mi
cost_b_B = 4.*10**6 ; # cost per mile to bulid in $
salvage_B = 6000. ; # salvage value per mile at end of 40 years
cost_mait_S = 1500. ; # cost in $ per mile to maintain
# GIL TRANSMISSION
L_GIL = 20. ; # length of route C in mi
cost_b_C = 7.6*10**6 ; # cost per mile to bulid in $
salvage_C = 1000. ; # salvage value per mile at end of 40 years
cost_mait_GIL = 200. ; # cost in $ per mile to maintain
savings = 17.5*10**6 ; # relative savings in power loss per year in $
# CALCULATIONS
n = 25. ; # useful life in years
i = 20./100 ; # carrying charge rate
p = ((1 + i)**n - 1)/(i*(1+i)**n) ; # p = P/A
# FOR OVERHEAD TRANSMISSION
P_OH = cost_b_A * L_OH ; # first cost of 500 kV OH line in $
F_OH = salvage_A * L_OH ; # Estimated salvage value in $
A_1 = P_OH * A_P - F_OH * A_F ; # Annual equivalent cost of capital in $
A_2 = P_OH * pr_tax + cost_mait_OH * L_OH ; # annual equivalent cost of tax and maintainance in $
A = A_1 + A_2 ; # total annual equi cost of OH line in $
# SUBMARINE TRANSMISSION LINE
P_S = cost_b_B * L_S ; # first cost of 500 kV OH line in $
F_S = salvage_B * L_S ; # Estimated salvage value in $
B_1 = P_S * A_P - F_S * A_F ; # Annual equivalent cost of capital in $
B_2 = P_S * pr_tax + cost_mait_S * L_S ; # annual equivalent cost of tax and maintainance in $
B = B_1 + B_2 ; # total annual equi cost of OH line in $
# GIL TRANSMISSION
P_GIL = cost_b_C * L_GIL ; # first cost of 500 kV OH line in $
F_GIL = salvage_C * L_GIL ; # Estimated salvage value in $
C_1 = P_GIL * A_P - F_GIL * A_F ; # Annual equivalent cost of capital in $
C_2 = P_GIL * pr_tax + cost_mait_GIL * L_GIL ; # annual equivalent cost of tax and maintainance in $
C = C_1 + C_2 ; # total annual equi cost of OH line in $
A_net = C - savings ; # Total net annual equi cost of GIL
# DISPLAY RESULTS
print ("EXAMPLE : 5.16 : SOLUTION :-") ;
print " OVERHEAD TRANSMISSION LINE : " ;
print " Annual equivalent cost of capital invested in line , A_1 = $ %d "%(A_1) ;
print " Annual equivalent cost of Tax and maintainance , A_2 = $ %d "%(A_2) ;
print " Total annual equivalent cost of OH transmission , A = $ %d "%(A) ;
print " SUBMARINE TRANSMISSION LINE : " ;
print " Annual equivalent cost of capital invested in line , A_1 = $ %d "%(B_1) ;
print " Annual equivalent cost of Tax and maintainance , A_2 = $ %d "%(B_2) ;
print " Total annual equivalent cost of Submarine power transmission , A = $ %d "%(B) ;
print " GIL TRANSMISSION LINE : " ;
print " Annual equivalent cost of capital invested in line , A_1 = $ %d "%(C_1) ;
print " Annual equivalent cost of Tax and maintainance , A_2 = $ %d "%(C_2) ;
print " Total annual equivalent cost of Submarine power transmission , A = $ %d "%(C) ;
print " Total net equivalent cost of GIL transmission = $ %d "%(A_net) ;
print " The result shows use of GIL is the best choice " ;
print " The next best alternative is Overhead transmission line " ;
# note : rounding off error.