266 lines
6.7 KiB
Python
Executable File

#!/usr/bin/env python
# -*- coding: iso-8859-1 -*-
import string
FichierEntete='templatesHtml/entete.html'
FichierMailleur='templatesHtml/mailleur.html'
FichierJob='templatesHtml/job.html'
FichierTableau='templatesHtml/tableau.html'
FichierLigne='templatesHtml/ligne.html'
FichierFinTableau='templatesHtml/tableauFin.html'
def compte_all(texte, subString):
start = 0
compte=0
while True:
trouve = texte.find(subString, start)
if trouve == -1: return compte
compte+=1
start = trouve + len(subString)
def FormateTexte(texte,dico):
for clef in dico.keys():
texteARemplacer="%"+str(clef)+"%"
remplacement=dico[clef]
if texte.find(texteARemplacer) < 0 :
print "impossible de remplacer ",texteARemplacer, "Pas d'occurence"
print remplacement
continue
if compte_all(texte,texteARemplacer) != 1 :
print "impossible de remplacer ",texteARemplacer, "trop d'occurences"
continue
remplacement=str(remplacement)
texte=texte.replace(texteARemplacer,remplacement)
return texte
def FormateLigne(texte,nb):
texteARemplacer="2%"
remplacement=str(nb)+"%"
texte=texte.replace(texteARemplacer,remplacement)
return texte
def CreeEntete(dico):
texteIni=open(FichierEntete).read()
texteRetour=FormateTexte(texteIni,dico)
return texteRetour
def CreeMailleur(dico):
texteIni=open(FichierMailleur).read()
texteRetour=FormateTexte(texteIni,dico)
return texteRetour
def CreeJob(dico):
texte=open(FichierJob).read()
texteRetour=FormateTexte(texte,dico)
return texteRetour
def CreeMailleOuGroupe(dico,nb):
texteIni=open(FichierTableau).read()
texteLigneIni=open(FichierLigne).read()
for i in range (2,nb+1) :
texteLigne=FormateLigne(texteLigneIni,i)
texteIni=texteIni+texteLigne
texteRetour=FormateTexte(texteIni,dico)
finTexte=open(FichierFinTableau).read()
texteFinal=texteRetour+finTexte
return texteFinal
def EcritFichier(texte,filename):
fp=open(filename,'w')
fp.write(texte)
fp.close()
if __name__=='__main__':
dicoEntete={}
dicoEntete["VERSIONTEST"]="V7.2"
dicoEntete["VERSIONREF"]="V6.6"
dicoEntete["MACHINE"]="dsp111002"
monTexte=CreeEntete(dicoEntete)
dicoMailleur={}
dicoMailleur["MAILLEUR"]="GHS3D"
texteMailleur=CreeMailleur(dicoMailleur)
monTexte+=texteMailleur
dicoJob={}
dicoJob["NOM"]="MASSIF"
dicoJob["NBCPU"]="10"
dicoJob["REFCPU"]="11"
dicoJob["DIFCPU"]="1"
dicoJob["DIFREL"]="10%"
dicoJob["WARNING"]="WARNING"
dicoJob["RMAX"]=6.1
dicoJob["RMAXREF"]=5.95
dicoJob["WRMAX"]="WARNING"
dicoJob["RMOY"]=3.8
dicoJob["RMOYREF"]=3.88
dicoJob["WRMOY"]=""
dicoJob["R1Q"]=2.84
dicoJob["R1QREF"]=2.84
dicoJob["RMED"]=3.6
dicoJob["RMEDREF"]=3.5
dicoJob["R2Q"]=4.91
dicoJob["R2QREF"]=4.92
dicoJob["TMAX"]=34.5
dicoJob["TMAXREF"]=35.5
dicoJob["WTMAX"]=""
dicoJob["TMOY"]=17.4
dicoJob["TMOYREF"]=17.5
dicoJob["WTMOY"]=""
dicoJob["T1Q"]=8.9
dicoJob["T1QREF"]=8.9
dicoJob["TMED"]=17.3
dicoJob["TMEDREF"]=17.8
dicoJob["T2Q"]=26.4
dicoJob["T2QREF"]=26.5
texteMailleur=CreeJob(dicoJob)
monTexte+=texteMailleur
dico={}
dico["TITRE"]="Nombre de Mailles dans le maillage entier"
dico["MAIL1"]="Quad_Edge"
dico["REF1"]=421
dico["NB1"]=422
dico["DIF1"]=1
dico["REL1"]=0.2
dico["WARN1"]=""
dico["MAIL2"]="Quad_Triangle"
dico["REF2"]=1068
dico["NB2"]=1078
dico["DIF2"]=8
dico["REL2"]=0.9
dico["WARN2"]=""
dico["MAIL3"]="Quad_Pyramid"
dico["NB3"]=5520
dico["REF3"]=5484
dico["DIF3"]=36
dico["REL3"]="0.6"
dico["WARN3"]="WARNING"
texteMaille=CreeMailleOuGroupe(dico,3)
monTexte+=texteMaille
fichierEssai="letter.html"
EcritFichier(monTexte,fichierEssai)
exit()
dico={}
dico["TITRE"]="Nombre de Mailles dans le groupe FOND_07"
dico["MAIL1"]="Quad_Triangle"
dico["REF1"]=12
dico["NB1"]=12
dico["DIF1"]=0
dico["REL1"]=0
dico["WARN1"]=""
texteMaille=CreeMailleOuGroupe(dico,1)
monTexte+=texteMaille
dico={}
dico["TITRE"]="Nombre de Mailles dans le groupe PAROI_07"
dico["MAIL1"]="Quad_Triangle"
dico["REF1"]=132
dico["NB1"]=132
dico["DIF1"]=0
dico["REL1"]=0
dico["WARN1"]=""
texteMaille=CreeMailleOuGroupe(dico,1)
monTexte+=texteMaille
dico={}
dico["TITRE"]="Nombre de Mailles dans le groupe ROCHE_07"
dico["MAIL1"]="Pyramid"
dico["REF1"]=2326
dico["NB1"]=2330
dico["DIF1"]=4
dico["REL1"]=0
dico["WARN1"]=""
texteMaille=CreeMailleOuGroupe(dico,1)
monTexte+=texteMaille
dicoJob={}
dicoJob={}
dicoJob["NOM"]="CUBE"
dicoJob["NBCPU"]="1"
dicoJob["REFCPU"]="21"
dicoJob["DIFCPU"]="1"
dicoJob["DIFREL"]="100%"
dicoJob["WARNING"]="WARNING"
dicoJob["RMAX"]=7
dicoJob["RMAXREF"]=6
dicoJob["WRMAX"]="WARNING"
dicoJob["RMOY"]=2.7
dicoJob["RMOYREF"]=1.8
dicoJob["WRMOY"]="WARNING"
dicoJob["R1Q"]=1.3
dicoJob["R1QREF"]=1.4
dicoJob["RMED"]=2.6
dicoJob["RMEDREF"]=2.6
dicoJob["R2Q"]=3.9
dicoJob["R2QREF"]=3.8
dicoJob["TMAX"]=4
dicoJob["TMAXREF"]=3.5
dicoJob["WTMAX"]="WARNING"
dicoJob["TMOY"]=1.8
dicoJob["TMOYREF"]=1.5
dicoJob["WTMOY"]="WARNING"
dicoJob["T1Q"]=0.7
dicoJob["T1QREF"]=0.7
dicoJob["TMED"]=1.9
dicoJob["TMEDREF"]=2
dicoJob["T2Q"]=3.1
dicoJob["T2QREF"]=3.2
texteMailleur=CreeJob(dicoJob)
monTexte+=texteMailleur
dico={}
dico["TITRE"]="Nombre de Mailles dans le maillage entier"
dico["MAIL1"]="Edge"
dico["REF1"]=12
dico["NB1"]=13
dico["DIF1"]=1
dico["REL1"]="8.3%"
dico["WARN1"]="WARNING"
dico["MAIL2"]="Triangle"
dico["REF2"]=24
dico["NB2"]=24
dico["DIF2"]=0
dico["REL2"]="0%"
dico["WARN2"]=""
dico["MAIL3"]="Pyramid"
dico["NB3"]=4
dico["REF3"]=5
dico["DIF3"]=1
dico["REL3"]="25%"
dico["WARN3"]="WARNING"
texteMaille=CreeMailleOuGroupe(dico,3)
monTexte+=texteMaille
dico={}
dico["TITRE"]="Nombre de Mailles dans le groupe SURFACE"
dico["MAIL1"]="Edge"
dico["REF1"]=12
dico["NB1"]=13
dico["DIF1"]=1
dico["REL1"]="8.3%"
dico["WARN1"]="WARNING"
dico["MAIL2"]="Triangle"
dico["REF2"]=24
dico["NB2"]=24
dico["DIF2"]=0
dico["REL2"]="0%"
dico["WARN2"]=""
texteMaille=CreeMailleOuGroupe(dico,2)
monTexte+=texteMaille
fichierEssai="/tmp/letter.html"
EcritFichier(monTexte,fichierEssai)