1 # -*- coding: utf-8 -*-
6 # -----------------------------------------------------------------------------
7 # --- statistiques maillage
9 def getStatsMaillageFissure(maillage, referencesMaillageFissure, maillageFissureParams):
13 logging.debug('start')
16 if maillageFissureParams.has_key('nomRep'):
17 nomRep = maillageFissureParams['nomRep']
19 nomFicFissure = maillageFissureParams['nomFicFissure']
20 fichierStatMaillageFissure = nomRep + '/' + nomFicFissure + '.res'
21 fichierNewRef = nomRep + '/' + nomFicFissure + '.new'
22 logging.debug("fichierStatMaillageFissure=%s", fichierStatMaillageFissure)
25 if maillage is not None:
26 mesures = maillage.GetMeshInfo()
28 for key, value in mesures.iteritems():
29 logging.debug( "key: %s value: %s", key, value)
31 logging.debug("dico mesures %s", d)
33 f = open(fichierStatMaillageFissure, 'w')
34 f2 = open(fichierNewRef, 'w')
36 for key in ('Entity_Quad_Pyramid', 'Entity_Quad_Hexa', 'Entity_Quad_Quadrangle'):
37 if d[key] != referencesMaillageFissure[key]:
38 logging.info("Ecart: %s reference: %s calcul: %s", key, referencesMaillageFissure[key], d[key])
39 f.write("Ecart: " + key + " reference: " + str(referencesMaillageFissure[key]) + " calcul: " + str(d[key]) + '\n')
42 logging.info("Valeur_OK: %s reference: %s calcul: %s", key, referencesMaillageFissure[key], d[key])
43 f.write("Valeur_OK: " + key + " reference: " + str(referencesMaillageFissure[key]) + " calcul: " + str(d[key]) + '\n')
44 f2.write(key + " = " + str(d[key]) + ",\n")
46 for key in ('Entity_Quad_Penta', 'Entity_Quad_Tetra', 'Entity_Quad_Triangle', 'Entity_Quad_Edge', 'Entity_Node'):
47 if (d[key] < (1.0 - tolerance)*referencesMaillageFissure[key]) \
48 or (d[key] > (1.0 + tolerance)*referencesMaillageFissure[key]):
49 logging.info("Ecart: %s reference: %s calcul: %s", key, referencesMaillageFissure[key], d[key])
50 f.write("Ecart: " + key + " reference: " + str(referencesMaillageFissure[key]) + " calcul: " + str(d[key]) + '\n')
53 logging.info("Valeur_OK: %s reference: %s calcul: %s", key, referencesMaillageFissure[key], d[key])
54 f.write("Valeur_OK: " + key + " reference: " + str(referencesMaillageFissure[key]) + " calcul: " + str(d[key]) + '\n')
55 f2.write(key + " = " + str(d[key]) + ",\n")