]> SALOME platform Git repositories - tools/eficas.git/commitdiff
Salome HOME
ajout profil
authorpascale.noyret <pascale.noyret@edf.fr>
Wed, 20 Feb 2019 14:29:27 +0000 (15:29 +0100)
committerpascale.noyret <pascale.noyret@edf.fr>
Wed, 20 Feb 2019 14:29:27 +0000 (15:29 +0100)
PSSE_PF_Eficas/utils.py

index 514dc5757731cb61aa4456f64a73926c1e98606a..f37c2d2f54d67cd18eb14464c5e08c6ca876d242 100644 (file)
@@ -4,10 +4,6 @@
 ############################################################
 debug = True
 
-"""
-Nouvelle ligne 
-"""
-
 dicoCaracteresSpeciaux = {
         " ":"_",
         "-" : "_" ,
@@ -44,330 +40,20 @@ def testNettoyeName():
        exit()
     print ('succes testNettoyeName')
 
-if __name__ == "__main__":
-     testNettoyeName()
+def testNettoyeNameAvecProfil():
+      import cProfile, pstats, StringIO
+      pr = cProfile.Profile()
+      pr.enable()
+      # appel de la fonction qu on veut profiler
+      testNettoyeName()
+      pr.disable()
+      s = StringIO.StringIO()
+      sortby = 'cumulative'
+      ps = pstats.Stats(pr, stream=s).sort_stats(sortby)
+      ps.print_stats()
+      print(s.getvalue())
     
 
-#        try:
-#            int(loadname[0])
-#            loadname="_" + loadname
-#        except:
-#            pass
-#        LoadDico[loadname]= {}
-#        LoadDico[loadname]['NAME'] = carray[0][i].strip()
-#        LoadDico[loadname]['ID'] = carray[1][i]
-#        LoadDico[loadname]['EXNAME'] =carray[2][i]
-#        LoadDico[loadname]['NUMBER']=iarray[0][i]
-#        LoadDico[loadname]['P']=np.real(xdata)[0][i]
-#        LoadDico[loadname]['Q']=np.imag(xdata)[0][i]
-#
-#    #Extract Generators
-#    sid = -1 #all buses
-#    flag = 1 #all in service loads/generators (4 all loads/generators)
-#
-#    string = ['NUMBER']
-#    ierr,iarray = psspy.amachint(sid,flag,string)
-#
-#    string = ['NAME','ID','EXNAME']
-#    ierr,carray = psspy.amachchar(sid,flag,string)
-#
-#    rstrings = ['pgen','qgen','mbase','pmax','qmax','pmin','qmin']
-#    ierr, rarray = psspy.amachreal(sid, flag, rstrings)
-#
-#    MachineDico = {} # [Bus name, machine ID, extended bus name, bus number]
-#    for i in range(len(iarray[0])):
-#        idname = "Gr" + carray[1][i].strip()
-###        try:
-###            idname = "Gr" + str(int(carray[1][i]))
-###        except:
-###            idname = "Gr" + carray[1][i]
-#        machinename = carray[0][i].strip()+ "__" + idname
-#        machinename = machinename.replace(" ","_")
-#        machinename = machinename.replace("-","_")
-#        machinename = machinename.replace(".","_")
-#        machinename = machinename.replace("&","and")
-#        machinename = machinename.replace("%","pct")
-#        machinename = machinename.replace("=","eq")
-#        machinename = machinename.replace("#","_")
-#        machinename = machinename.replace("$","_")
-#        machinename = machinename.replace("/","_")
-#        machinename = machinename.replace("\\","_")            
-#        try:
-#            int(machinename[0])
-#            machinename="_" + machinename
-#        except:
-#            pass
-#        MachineDico[machinename]={}
-#        MachineDico[machinename]['NAME'] = carray[0][i].strip()
-#        MachineDico[machinename]['ID'] = carray[1][i]
-#        MachineDico[machinename]['EXNAME'] =carray[2][i]
-#        MachineDico[machinename]['NUMBER']=iarray[0][i]
-#        MachineDico[machinename]['P']=rarray[0][i]
-#        MachineDico[machinename]['Q']=rarray[1][i]
-#        MachineDico[machinename]['PMAX']=rarray[3][i]
-#        MachineDico[machinename]['QMAX']=rarray[4][i]
-#        MachineDico[machinename]['PMIN']=rarray[5][i]
-#        MachineDico[machinename]['QMIN']=rarray[6][i]
-#
-#    #Extract Motors
-#    sid = -1 #all buses
-#    flag = 1 #all in service loads/generators (4 all loads/generators)
-#
-#    string = ['NUMBER','PSETCODE','BASECODE']
-#    ierr,iarray = psspy.aindmacint(sid,flag,string)
-#
-#    string = ['NAME','ID','EXNAME']
-#    ierr,carray = psspy.aindmacchar(sid,flag,string)
-#
-#    rstrings = ['psetpoint','mbase','p','q']
-#    ierr, rarray = psspy.aindmacreal(sid, flag, rstrings)
-#
-#
-#    MotorDico = {} # [Bus name, machine ID, extended bus name, bus number]
-#    for i in range(len(iarray[0])):
-#        idname = "Mo" + carray[1][i].strip()
-###        try:
-###            idname = "Gr" + str(int(carray[1][i]))
-###        except:
-###            idname = "Gr" + carray[1][i]
-#        motorname = carray[0][i].strip()+ "__" + idname
-#        motorname = motorname.replace(" ","_")
-#        motorname = motorname.replace("-","_")
-#        motorname = motorname.replace(".","_")
-#        motorname = motorname.replace("&","and")
-#        motorname = motorname.replace("%","pct")
-#        motorname = motorname.replace("=","eq")
-#        motorname = motorname.replace("#","_")
-#        motorname = motorname.replace("$","_")
-#        motorname = motorname.replace("/","_")
-#        motorname = motorname.replace("\\","_")
-#        
-#        try:
-#            int(motorname[0])
-#            motorname="_" + motorname
-#        except:
-#            pass
-#        MotorDico[motorname]={}
-#        MotorDico[motorname]['NAME'] = carray[0][i].strip()
-#        MotorDico[motorname]['ID'] = carray[1][i]
-#        MotorDico[motorname]['EXNAME'] =carray[2][i]
-#        MotorDico[motorname]['NUMBER']=iarray[0][i]
-#        MotorDico[motorname]['PSETCODE']=iarray[1][i]
-#        MotorDico[motorname]['BASECODE']=iarray[2][i]
-#        MotorDico[motorname]['PSETPOINT']=rarray[0][i]
-#        MotorDico[motorname]['MBASE']=rarray[1][i]
-#        MotorDico[motorname]['P']=rarray[2][i]
-#        MotorDico[motorname]['Q']=rarray[3][i]
-#
-#
-#    #Extract Lignes
-#    sid = -1
-#    owner = 1
-#    ties = 1
-#    flag = 2 #6 for two-winding transfos
-#    entry = 1 #each branch once, not both directions
-#    string = ['FROMNUMBER','TONUMBER']
-#    ierr,iarray = psspy.abrnint(sid,owner,ties,flag,entry,string)
-#    string = ['FROMNAME','TONAME','FROMEXNAME','TOEXNAME','ID']
-#    ierr,carray = psspy.abrnchar(sid,owner,ties,flag,entry,string)
-#
-#    LineDico = {} #[linename, Bus name 1, Bus name 2, ID, extended bus name 1, extended bus name 2, bus number 1, bus number 2]
-#    for i in range(len(iarray[0])):
-#        idname = carray[4][i].strip()
-#        #idname = carray[4][i]
-#        if '@' in idname:
-#            idname = idname.replace('@','Br')
-#        elif '*' in idname:
-#            idname = idname.replace('*','Sw')
-#        else:
-#            try:
-#                idname = 'Li' + str(int(idname))
-#            except:
-#                idname = 'Li' + idname
-#        linename =carray[0][i].strip() + "__" + carray[1][i].strip() + "__" + idname
-#        linename = linename.replace(" ","_")
-#        linename = linename.replace("-","_")
-#        linename = linename.replace(".","_")
-#        linename = linename.replace("&","and")
-#        linename = linename.replace("%","pct")
-#        linename = linename.replace("=","eq")
-#        linename = linename.replace("#","_")
-#        linename = linename.replace("$","_")
-#        linename = linename.replace("/","_")
-#        linename = linename.replace("\\","_")
-#        try:
-#            int(linename[0])
-#            linename="_" + linename
-#        except:
-#            pass
-#        if NoBreakersandSwitches:
-#            if 'Br' not in idname and 'Sw' not in idname:
-#                LineDico[linename]={}
-#                LineDico[linename]['FROMNAME']=carray[0][i].strip()
-#                LineDico[linename]['TONAME']=carray[1][i].strip()
-#                LineDico[linename]['ID']=carray[4][i]
-#                LineDico[linename]['FROMEXNAME']=carray[2][i]
-#                LineDico[linename]['TOEXNAME']=carray[3][i]
-#                LineDico[linename]['FROMNUMBER']=iarray[0][i]
-#                LineDico[linename]['TONUMBER']=iarray[1][i]
-#
-#
-#    print "Read lines"
-#    
-#    #Extract Transfos
-#    sid = -1
-#    owner = 1
-#    ties = 1
-#    flag = 6 #two-winding transfos
-#    entry = 1 #each branch once, not both directions
-#    string = ['FROMNUMBER','TONUMBER']
-#    ierr,iarray = psspy.abrnint(sid,owner,ties,flag,entry,string)
-#    string = ['FROMNAME','TONAME','FROMEXNAME','TOEXNAME','ID']
-#    ierr,carray = psspy.abrnchar(sid,owner,ties,flag,entry,string)
-#
-#    TfoDico = {} #[linename, Bus name 1, Bus name 2, machine ID, extended bus name 1, extended bus name 2, bus number 1, bus number 2]
-#    for i in range(len(iarray[0])):
-#        idname = 'Tr' + carray[4][i].strip()
-###        try:
-###            idname = 'Tr' + str(int(carray[4][i]))
-###        except:
-###            idname = 'Tr' + carray[4][i]
-#        tfoname = carray[0][i].strip() + "__" + carray[1][i].strip() + "__" + idname
-#        tfoname = tfoname.replace(" ","_")
-#        tfoname = tfoname.replace("-","_")
-#        tfoname = tfoname.replace(".","_")
-#        tfoname = tfoname.replace("&","and")
-#        tfoname = tfoname.replace("%","pct")
-#        tfoname = tfoname.replace("=","eq")
-#        tfoname = tfoname.replace("#","_")
-#        tfoname = tfoname.replace("$","_")
-#        tfoname = tfoname.replace("/","_")
-#        tfoname = tfoname.replace("\\","_")
-#        try:
-#            int(tfoname[0])
-#            tfoname="_" + tfoname
-#        except:
-#            pass
-#        TfoDico[tfoname]={}
-#        TfoDico[tfoname]['FROMNAME']=carray[0][i].strip()
-#        TfoDico[tfoname]['TONAME']=carray[1][i].strip()
-#        TfoDico[tfoname]['ID']=carray[4][i]
-#        TfoDico[tfoname]['FROMEXNAME']=carray[2][i]
-#        TfoDico[tfoname]['TOEXNAME']=carray[3][i]
-#        TfoDico[tfoname]['FROMNUMBER']=iarray[0][i]
-#        TfoDico[tfoname]['TONUMBER']=iarray[1][i]
-#        TfoDico[tfoname]['#WIND']=2
-#    print "Read Transfos"
-#
-#    #Extract 3 winding Transfos
-#    sid = -1 #assume a subsystem containing all buses in working case
-#    owner_3flow = 1 #1 = use bus ownership 2 = use tfo ownership
-#    ties_3flow = 3 #ignored bc sid is negative. 3 = interior subsystem and subsystem tie 3 winding transformers 
-#    flag=3 #all 3 winding transfo windings
-#    string = ['wind1number','wind2number','wind3number']
-#    ierr,iarray = psspy.awndint(sid,owner,ties,flag,entry,string)
-#    string = ['wind1name','wind2name','wind3name','wind1exname','wind2exname','wind3exname','id']
-#    ierr,carray = psspy.awndchar(sid,owner,ties,flag,entry,string)
-#
-#    #[Bus name 1, Bus name 2, Bus name 3, machine ID, extended bus name 1, extended bus name 2, extended bus name 3, bus number 1, bus number 2, bus number 3]
-#    for i in range(len(iarray[0])):
-#        idname = 'Tr' + carray[6][i].strip()
-###        try:
-###            idname = 'Tr' + str(int(carray[4][i]))
-###        except:
-###            idname = 'Tr' + carray[4][i]
-#        tfoname = carray[0][i].strip() + "__" + carray[1][i].strip() + "__" + carray[2][i].strip() + "__" + idname
-#        tfoname = tfoname.replace(" ","_")
-#        tfoname = tfoname.replace("-","_")
-#        tfoname = tfoname.replace(".","_")
-#        tfoname = tfoname.replace("&","and")
-#        tfoname = tfoname.replace("%","pct")
-#        tfoname = tfoname.replace("=","eq")
-#        tfoname = tfoname.replace("#","_")
-#        tfoname = tfoname.replace("$","_")
-#        tfoname = tfoname.replace("/","_")
-#        tfoname = tfoname.replace("\\","_")
-#        try:
-#            int(tfoname[0])
-#            tfoname="_" + tfoname
-#        except:
-#            pass
-#        TfoDico[tfoname]={}
-#        TfoDico[tfoname]['FROMNAME']=carray[0][i].strip()
-#        TfoDico[tfoname]['TONAME']=carray[1][i].strip()
-#        TfoDico[tfoname]['3NAME']=carray[2][i].strip()
-#        TfoDico[tfoname]['ID']=carray[6][i]
-#        TfoDico[tfoname]['FROMEXNAME']=carray[3][i]
-#        TfoDico[tfoname]['TOEXNAME']=carray[4][i]
-#        TfoDico[tfoname]['3EXNAME']=carray[5][i]
-#        TfoDico[tfoname]['FROMNUMBER']=iarray[0][i]
-#        TfoDico[tfoname]['TONUMBER']=iarray[1][i]
-#        TfoDico[tfoname]['3NUMBER']=iarray[2][i]
-#        TfoDico[tfoname]['#WIND']=3
-#    print "Read 3-Winding Transfos"
-#    # path1 = os.getcwd()
-#    # import json
-#    # path_temp=os.path.dirname(NetworkFile)
-#    # # filew = open(path_temp+'/temp.txt', 'w')
-#    # json.dump(MachineDico, open("toto.txt", 'w'))
-#    # # filew.write(MachineDico)
-#    # # filew.close()
-#    filew = open('temp.txt', 'w')
-#    filew.write(NetworkFile + '\n')
-#    filew.write(PSSE_PATH + '\n')
-#    filew.close()
-#
-#    return MachineDico, LoadDico, LineDico, TfoDico, MotorDico
-#
-#
-#def PFExtractGeneratorLoadLineandTransfoDico(NetworkFile, PF_PATH,Python3_path):
-#    # PSEN sous PowerFactory Lecture les donnees de Generateur,Load,Line,Transfo
-#    import os,pickle
-#    import sys, subprocess
-#    import numpy as np
-#    path1=os.getcwd()
-#    # path_temp=os.path.dirname(NetworkFile)
-#    filew=open('temp.txt','w')
-#    filew.write(NetworkFile+'\n')
-#    filew.write(PF_PATH + '\n')
-#    filew.write(Python3_path + '\n')
-#    filew.close()
-#    print('changer le chemin de Python3 executable')
-#    lancer = [Python3_path+'/python.exe', path1+'/com.py']# changer le chemin de Python3 executable
-#    proc = subprocess.Popen(lancer)
-#    proc.wait()
-#    with open('Data_for_interface', 'rb') as fichier:
-#       mon_depickler = pickle.Unpickler(fichier)
-#       data_file = mon_depickler.load()
-#
-#    import collections
-#    def convert(data):
-#        if isinstance(data, basestring):
-#            return str(data)
-#        elif isinstance(data, collections.Mapping):
-#            return dict(map(convert, data.iteritems()))
-#        elif isinstance(data, collections.Iterable):
-#            return type(data)(map(convert, data))
-#        else:
-#            return data
-#    data=convert(data_file)
-#    MachineDico=data['MachineDico']
-#    LoadDico = data['LoadDico']
-#    LineDico = data['LineDico']
-#    TfoDico = data['TransfoDico']
-#    MotorDico = data['MotorDico']
-#    os.remove('Data_for_interface')
-#
-#    
-#    return MachineDico, LoadDico, LineDico, TfoDico, MotorDico
-#
-#
-##NetworkFile=r"C:\Users\j15773\Documents\Projects\DEWA\Task 4\FEWA_GCCIA_SUMMAX2018_OPF_EQ2.sav"
-#
-##PSSE_PATH=r"C:\Program Files (x86)\PTI\PSSE34\PSSBIN"
-##PSSPY_PATH=r"C:\Program Files (x86)\PTI\PSSE34\PSSPY27"
-#
-##PSSE_PATH=r"C:\Program Files (x86)\PTI\PSSE33\PSSBIN"
-##PSSPY_PATH=r"C:\Program Files (x86)\PTI\PSSE33\PSSBIN"
-#
-##MachineDico, LoadDico, LineDico, TfoDico, MotorDico = ExtractGeneratorLoadLineandTransfoDico(NetworkFile,PSSE_PATH,PSSPY_PATH)
+if __name__ == "__main__":
+     testNettoyeName()
+     testNettoyeNameAvecProfil()