American Public Power Association tools




Pay Notebook Creator: Salah Ahmed0
Set Container: Numerical CPU with TINY Memory for 10 Minutes 0
Total0

TRANSMISSION LINE ENVIRONMENTAL EFFECTS PROGRAM

MODULE FOR CALCULATION OF MAGNETIC FIELD INDUCED VOLTAGES IN PARALLEL STRUCTURES

TL EFFECTS VERSION 1/4

ENTER MAGNITUDE, ANGLE

{mag_angles_table: magnitudes and angles}

{rho: ENTER EARTH RESISTIVITY IN OHM-METERS}

ENTER COORDINATES OF PARALLEL CONDUCTOR AND AUGMENT THE LINE IMPEDANCE MATRIX

{x: X}

{y: Y}

In [4]:
# CrossCompute
mag_angles_table_path = 'magnitude_angles.csv'

rho = 100
x = 0
y = 0

target_folder = '/tmp'
In [5]:
from os.path import join
output_text_path = join(target_folder, 'magnetic_field_parallel.log')
target_text_path = join(target_folder, 'magnetic_field_parallel.txt')
In [6]:
from pandas import read_csv
df = read_csv(mag_angles_table_path)
df
Out[6]:
<style scoped> .dataframe tbody tr th:only-of-type { vertical-align: middle; } .dataframe tbody tr th { vertical-align: top; } .dataframe thead th { text-align: right; } </style>
magnitudes angles
0 10 1232
1 123 13
In [7]:
mag_angles = [','.join((str(x), str(y))) for x,y in zip(df['magnitudes'], df['angles'])]
In [9]:
pylon_text_path = ''
In [10]:
from itertools import chain
from os.path import expanduser

cmd = list(chain([
          './magnetic_field_parallel.out',
          pylon_text_path,
          expanduser(target_text_path)
         ],
         mag_angles, 
        [str(rho),
         str(x),
         str(y)]))
In [ ]:
from subprocess import check_output, STDOUT
output_text = check_output(cmd, stderr=STDOUT)
with open(output_text_path, 'wb') as output_file:
    output_file.write(output_text)
In [ ]:
print('output_text_path = ' + output_text_path)
print('target_text_path = ' + target_text_path)