| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172 |
- # -*- coding: utf-8 -*-
- # =============================================================================
- # Copyright (C) 2018 Mercados Electricos de Centroamérica. All rights reserved
- # =============================================================================
- """Crea las estructuras con numeración secuencial de buses, circuitos y nombres de circuitos
- """
- from numpy import array
- from numpy import zeros
- from utils.idx_brch import BUS_I, BUS_J, CKT
- from pandas import DataFrame
- def setbus(net):
- """Lee la información de la red y crea una serie con los códigos de nodos y su numeración correlativa.
- """
- b = net['bus_i'].append(net['bus_j']).drop_duplicates().sort_values()
- b = b.reset_index(drop=True)
- return b
- def setbranch(net, b):
- """Utiliza la información de la red, lod códigos de nodos y su numeración correlativa para generar un listado con
- de los circuitos de acuerdo a la numeración correlativo del nodo.
- """
- br = net.copy()
- for i in range(0, net.shape[0]):
- br.loc[i, 'bus_i'] = b[b == br['bus_i'][i]].index[0]
- br.loc[i, 'bus_j'] = b[b == br['bus_j'][i]].index[0]
- br = br.sort_values(['bus_i', 'bus_j'])
- return br.values
- def setvariable(variable):
- l=variable.shape[0]
- z=zeros(l)
- for i in range(0,variable.shape[0]):
- z[i]=variable[i]
- return z
- def setvariable_s(variable):
- (l,n)=variable.shape
- z=zeros((l,n))
- for i in range(0,l):
- for j in range(0,n):
- z[i,j]=variable.iloc[i,j]
- return z
- def setvariable_p(variable, n):
- z=zeros((n,5))
- m=0
- for j in range(0,n):
- for i in range(0,5):
- z[j,i]=variable[m]
- m=m+1
- return z
- def branchnames(b, br):
- """Devuelve un dataframe con los BUS I BUS J y CKT ordenados.
- """
- brnames_bi = []
- brnames_bj = []
- for i in range(0, br.shape[0]):
- brnames_bi.append("".join([str(b[br[i, BUS_I]])]))
- brnames_bj.append("".join([str(b[br[i, BUS_J]])]))
- brnames=DataFrame()
- brnames['BUS I']=brnames_bi
- brnames['BUS J']=brnames_bj
- brnames['CKT']=br[:,2]
- return brnames
|