1 # Copyright (C) 2013-2019 CEA/DEN, EDF R&D
3 # This library is free software; you can redistribute it and/or
4 # modify it under the terms of the GNU Lesser General Public
5 # License as published by the Free Software Foundation; either
6 # version 2.1 of the License, or (at your option) any later version.
8 # This library is distributed in the hope that it will be useful,
9 # but WITHOUT ANY WARRANTY; without even the implied warranty of
10 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
11 # Lesser General Public License for more details.
13 # You should have received a copy of the GNU Lesser General Public
14 # License along with this library; if not, write to the Free Software
15 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
17 # See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
25 def __init__(self,listeParamMaillage,salomePath,versionId,mesGroupesRef):
26 self.id=listeParamMaillage[0]
27 self.script=str(listeParamMaillage[1])
28 self.fichierMedResult=str(listeParamMaillage[2])
29 self.fichierStatResult=str(listeParamMaillage[2]).replace('.med','.res')
30 self.fichierGroupe=self.fichierMedResult.replace('.med','_groupesRef.res')
31 self.salomePath=salomePath
32 self.versionId=versionId
33 self.mesGroupesRef=mesGroupesRef
34 self.CPU=3 # Quand on n appelle pas execute
35 self.fichiersADetruire=[self.fichierMedResult,self.fichierStatResult,self.fichierGroupe]
39 home=os.environ['HOME']
40 commande=os.path.abspath(os.path.join(home,self.salomePath,"salome"))
41 script= os.path.abspath(os.path.join(os.path.abspath(__file__),'../..',self.script))
44 #a=os.system(commande+" -t "+script+" > /tmp/Exec 2>&1")
45 a=os.system(commande+" -t "+script)
48 print(" Temps d execution : ", self.CPU)
50 #stdout, stderr = p.communicate()
53 def getStatSurMailles(self):
55 text=open(self.fichierStatResult).read()
57 print("Impossible d'ouvrir le fichier: ", str(self.fichierStatResult))
63 while i < len(liste) :
64 listeColonnes.append(liste[i])
65 listeValues.append(liste[i+1])
67 return listeColonnes,listeValues
70 def getStatSurRatiosGroupes(self,groupe):
71 extension="_"+groupe+'_Ratio.res'
72 fichier=self.fichierMedResult.replace('.med',extension)
73 self.fichiersADetruire.append(fichier)
75 text=open(fichier).read()
77 print("Impossible d'ouvrir le fichier: ", str(fichier))
82 def getStatSurTaillesGroupes(self,groupe):
83 extension="_"+groupe+'_Taille.res'
84 fichier=self.fichierMedResult.replace('.med',extension)
85 self.fichiersADetruire.append(fichier)
87 text=open(fichier).read()
89 print("Impossible d'ouvrir le fichier: ", str(fichier))
95 def getStatSurGroupes(self,groupe):
96 extension="_"+groupe+'.res'
97 fichier=self.fichierMedResult.replace('.med',extension)
98 self.fichiersADetruire.append(fichier)
100 text=open(fichier).read()
102 print("Impossible d'ouvrir le fichier: ", str(fichier))
108 while i < len(liste) :
109 listeColonnes.append(liste[i])
110 listeValues.append(liste[i+1])
112 return listeColonnes,listeValues
114 def getStatSurTailles(self):
115 fichier=self.fichierMedResult.replace('.med','.taille')
116 self.fichiersADetruire.append(fichier)
118 text=open(fichier).read()
120 print("Impossible d'ouvrir le fichier: ", str(fichier))
122 liste=text.split(",")
123 # print "taille",liste
126 def getStatSurRatios(self):
127 fichier=self.fichierMedResult.replace('.med','.ratio')
128 self.fichiersADetruire.append(fichier)
130 text=open(fichier).read()
132 print("Impossible d'ouvrir le fichier: ", str(fichier))
134 liste=text.split(",")
142 for fichier in self.fichiersADetruire: