#print csr_matrix((data, (row, col)), shape=(3, 3)).toarray() powsys=whole_system() nodearray={} #import system i=0 nnode=0 n1branch=0 n2branch=0 with open('load.csv', 'rb') as f: reader = csv.reader(f, delimiter=',', quoting=csv.QUOTE_NONE) #print len(reader) for row in reader: if i==0: i=i+1 continue onebranch=onephasepqbranch() onebranch.p=float(row[0]) onebranch.q=float(row[1]) onebranch.frnodename=row[2] onebranch.tonodename=row[3] if not nodearray.has_key(onebranch.frnodename) and not onebranch.frnodename=='-1': nodearray[onebranch.frnodename]=nnode nnode=nnode+1 if not nodearray.has_key(onebranch.tonodename) and not onebranch.tonodename=='-1': nodearray[onebranch.tonodename]=nnode nnode=nnode+1 if onebranch.frnodename=='-1': nodearray[onebranch.frnodename]=-1 if onebranch.tonodename=='-1': nodearray[onebranch.tonodename]=-1 onebranch.frnode=nodearray[onebranch.frnodename]
mat=np.matrix(A2diag.todense()) np.savetxt('text.txt',mat,fmt='%.2f') dx=linalg.spsolve(J, F) print '2a',dx[nodearray['2a']]+1j*dx[nodearray['2a']+nnode] print '2b',dx[nodearray['2b']]+1j*dx[nodearray['2b']+nnode] print '2c',dx[nodearray['2c']]+1j*dx[nodearray['2c']+nnode] print '3a',dx[nodearray['3a']]+1j*dx[nodearray['3a']+nnode] print '3b',dx[nodearray['3b']]+1j*dx[nodearray['3b']+nnode] print '3c',dx[nodearray['3c']]+1j*dx[nodearray['3c']+nnode] for iter in range(8): for j in range(len(powsys.onephasepqbrancharray)): t=onephasepqbranch() t=powsys.onephasepqbrancharray[j] t.ire=np.real((t.p+1j*t.q)/(dx[t.frnode]+1j*dx[t.frnode+nnode])) t.iim=-np.imag((t.p+1j*t.q)/(dx[t.frnode]+1j*dx[t.frnode+nnode])) if iter==0: #print t.ire #print t.iim ival=t.ire+1j*t.iim sval=t.p+1j*t.q vval=dx[t.frnode]+1j*dx[t.frnode+nnode] #print vval #print t.frnode #print t.frnodename #print nodearray['4c'] print 'i',ival print 'v',vval
#print csr_matrix((data, (row, col)), shape=(3, 3)).toarray() powsys=whole_system() nodearray={} #import system i=0 nnode=0 n1branch=0 n2branch=0 with open('seload.csv', 'rb') as f: reader = csv.reader(f, delimiter=',', quoting=csv.QUOTE_NONE) #print len(reader) for row in reader: if i==0: i=i+1 continue onebranch=onephasepqbranch() onebranch.p=float(row[0]) onebranch.q=float(row[1]) onebranch.frnodename=row[2] onebranch.tonodename=row[3] if not nodearray.has_key(onebranch.frnodename) and not onebranch.frnodename=='-1': nodearray[onebranch.frnodename]=nnode nnode=nnode+1 if not nodearray.has_key(onebranch.tonodename) and not onebranch.tonodename=='-1': nodearray[onebranch.tonodename]=nnode nnode=nnode+1 if onebranch.frnodename=='-1': nodearray[onebranch.frnodename]=-1 if onebranch.tonodename=='-1': nodearray[onebranch.tonodename]=-1 onebranch.frnode=nodearray[onebranch.frnodename]
J = scipy.sparse.vstack([Jup, fre, fim], format="csr") mat = np.matrix(A2diag.todense()) np.savetxt('text.txt', mat, fmt='%.2f') dx = linalg.spsolve(J, F) print '2a', dx[nodearray['2a']] + 1j * dx[nodearray['2a'] + nnode] print '2b', dx[nodearray['2b']] + 1j * dx[nodearray['2b'] + nnode] print '2c', dx[nodearray['2c']] + 1j * dx[nodearray['2c'] + nnode] print '3a', dx[nodearray['3a']] + 1j * dx[nodearray['3a'] + nnode] print '3b', dx[nodearray['3b']] + 1j * dx[nodearray['3b'] + nnode] print '3c', dx[nodearray['3c']] + 1j * dx[nodearray['3c'] + nnode] for iter in range(8): for j in range(len(powsys.onephasepqbrancharray)): t = onephasepqbranch() t = powsys.onephasepqbrancharray[j] t.ire = np.real( (t.p + 1j * t.q) / (dx[t.frnode] + 1j * dx[t.frnode + nnode])) t.iim = -np.imag( (t.p + 1j * t.q) / (dx[t.frnode] + 1j * dx[t.frnode + nnode])) if iter == 0: #print t.ire #print t.iim ival = t.ire + 1j * t.iim sval = t.p + 1j * t.q vval = dx[t.frnode] + 1j * dx[t.frnode + nnode] #print vval #print t.frnode #print t.frnodename #print nodearray['4c']